From 7ef76b0a9b1914e21572a800b4a4f0a977058662 Mon Sep 17 00:00:00 2001 From: Molunerfinn Date: Fri, 1 Mar 2019 16:41:40 +0800 Subject: [PATCH] Fixed: #190 || copy image to upload correctly --- package.json | 2 +- src/datastore/index.js | 35 ++++++++++++++++++++++++++++++++--- static/linux.sh | 22 ++++++++++++---------- static/mac.applescript | Bin 889 -> 1962 bytes static/windows.ps1 | 5 +++++ yarn.lock | 6 +++--- 6 files changed, 53 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index e43a4c89..a06a5992 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ "lowdb": "^1.0.0", "md5": "^2.2.1", "melody.css": "^1.0.2", - "picgo": "^1.2.4", + "picgo": "^1.2.6", "qiniu": "^7.1.1", "vue": "^2.3.3", "vue-electron": "^1.0.6", diff --git a/src/datastore/index.js b/src/datastore/index.js index cef73aac..ddeed766 100644 --- a/src/datastore/index.js +++ b/src/datastore/index.js @@ -43,10 +43,39 @@ if (!db.has('settings.shortKey').value()) { } // init generate clipboard image files +let clipboardFiles = getClipboardFiles() if (!fs.pathExistsSync(path.join(STORE_PATH, 'windows.ps1'))) { - fs.copySync(path.join(__static, '/linux.sh'), path.join(STORE_PATH, '/linux.sh')) - fs.copySync(path.join(__static, '/mac.applescript'), path.join(STORE_PATH, '/mac.applescript')) - fs.copySync(path.join(__static, '/windows.ps1'), path.join(STORE_PATH, '/windows.ps1')) + clipboardFiles.forEach(item => { + fs.copyFileSync(item.origin, item.dest) + }) +} else { + clipboardFiles.forEach(item => { + diffFilesAndUpdate(item.origin, item.dest) + }) +} + +function diffFilesAndUpdate (filePath1, filePath2) { + let file1 = fs.readFileSync(filePath1) + let file2 = fs.readFileSync(filePath2) + + if (!file1.equals(file2)) { + fs.copyFileSync(filePath1, filePath2) + } +} + +function getClipboardFiles () { + let files = [ + '/linux.sh', + '/mac.applescript', + '/windows.ps1' + ] + + return files.map(item => { + return { + origin: path.join(__static, item), + dest: path.join(STORE_PATH, item) + } + }) } export default db diff --git a/static/linux.sh b/static/linux.sh index 15b75ae3..191dc73e 100644 --- a/static/linux.sh +++ b/static/linux.sh @@ -1,16 +1,18 @@ -# from https://github.com/favers/vscode-qiniu-upload-image/blob/master/lib/linux.sh - #!/bin/sh - # require xclip(see http://stackoverflow.com/questions/592620/check-if-a-program-exists-from-a-bash-script/677212#677212) command -v xclip >/dev/null 2>&1 || { echo >&1 "no xclip"; exit 1; } # write image in clipboard to file (see http://unix.stackexchange.com/questions/145131/copy-image-from-clipboard-to-file) -if -xclip -selection clipboard -target image/png -o >/dev/null 2>&1 -then -xclip -selection clipboard -target image/png -o >$1 2>/dev/null -echo $1 +filePath=`xclip -selection clipboard -o 2>/dev/null | grep ^file:// | cut -c8-` +if [ ! -n "$filePath" ] ;then + if + xclip -selection clipboard -target image/png -o >/dev/null 2>&1 + then + xclip -selection clipboard -target image/png -o >$1 2>/dev/null + echo $1 + else + echo "no image" + fi else -echo "no image" -fi \ No newline at end of file + echo $filePath +fi diff --git a/static/mac.applescript b/static/mac.applescript index 91f1b82de9ff3f6af72a499d62bb4fbe200078c4..f1ee277e50bc7c7c0f82ef3354a3d9d2166349ce 100644 GIT binary patch literal 1962 zcmb7_-EPxB5QXP9c?v66j?_}P?E@6`rbL1ZZr#*LEIB_o2^Fe%A|8Qv1HQA<&DyR5 zMXSc%@$8wiXMXzo*QH%rW;fQ@*4DhO?7-UD-mdM6wX}-;%8qt#Z)_gCuJAnKv9iK8 z;VGXg?B@JdocoGh-Vat1VTW~(kKQXz7vPpQ#;&+K-W$GtBmRQ#HTzHOWZz@E=I@F1 z1H?KY$vU$;dyoH5yI?ng-3~TO-oCTOtS$QtQ(WMS@URJeW#&nJv(h4 zNj25i7A$GiRb<$|+iN);e!hxdR$J1^`(8?Fx->04`gt9N9{3-QvGe;#UG8yCC}%?_ zN|Z?*^m59mX4`e+Qzv1?xf8K{A9p_S(gYmt9WhqDX*#G1m2K5yaq2QL@T%_5WY6(A z1h11@&Z-|G%D?7ftQ+s;*HmJRpy}zoUfLHrT78|m^KTWM?kWuD?f)~{Q$Kk*$E0&o YP+!j3yS0(JTa&*%hsGy_ZpM_!Ka*KMO#lD@ literal 889 zcmZ`%L2lbH5WMRZ1D|A|j@xSY|!;`lo`WRh!-0wRb`|0hWvEzQ6La$8db=1lKS)IGdr+}Qw5WBI5no_uoNdV=P~ws@I*I96rx1TOT!QRr zY{aNT(5Ayl4HGLC3elgLp1#y{JU?;1+>!GdwAMp4jc~-3&pV~VyC)@3lZbsx_ zX|710OJuI7*%{5C-J4bZ2o+Gb+6T^?CS+luz1=1jGfDwy1{-9da~CN()`#yuo?qdT zXhizUc;-e&#Cz)t+B!JM=YPn_l{NF$ui3FVCPR=6yCfJpcfT<nA@aHDrVDWzVgtIrm~&%lwoH WWbT