請問OB VIM normal 模式的貼(paste)截圖...

請問OB VIM normal 模式的貼(paste)截圖…

如果我在Windows 10使用截圖程式截圖後,我只能按滑鼠右鍵(選paste 或 paste as plain text)才能貼進OB裡)

(或是由NormalMode改成InsertMode 才能ctrl+V 貼進OB)

(截圖在NormalMode用 ctrl+V; ctrl+shift+V; win+V 都不給貼進OB。會變VIM的 VISUAL MODE; 用Vim的 P指令 也貼不進截圖到OB)

(在NormalMode,我只能用滑鼠右鍵才能貼上截圖。但是貼上截圖後會變成InsertMode)

我希望在OB的VIM NormalMode就能用VIM原生的P指令(或是設快捷鍵),一鍵貼截圖進OB裡而不要切換模式( NormalMode/VisualMode) ,請問有方法能實現嗎?

謝謝

确实很苦恼,都不说全键盘工作流了,就一个粘贴图片就搞不定,太蛋疼了。

1 个赞

VimLover 您好

很開心,有vim +鍵盤黨

新手我最近看了 簡睿學堂的影片,用AHK 初步解決這個苦惱了。

; :+1:[AHK#21] 擷取螢幕並存成檔案-簡單的截圖操作 - YouTube
; https://www.youtube.com/watch?v=0swJUkrZqUo&t=66s

截圖後用 p 就能在Obsidian貼上圖,而且
:tada::tada:維持ob/vim/normal mode (這是重點):tada::tada:
AHK腳本檔及思路如附,參考囉。
也期待有大佬能優化 obsidian/vim 的相關功能。


; 分號是註解
; 2024-03-21_Thu
; 這是Obsidian+VimMode時,解決不能直接用 P 鍵貼上截圖的初期替代方案
;
; 這是程式小白寫的,如果對AHK,Vim,Obsidian的理解有誤,歡迎回覆告知我。
;AHK腳本歡迎自行優化
;
; 這是之前參照 YouTube 簡睿學堂學到的 winclip 方法 ,winclip 請直接參照簡睿學堂設定即可。
; 👍[AHK#21] 擷取螢幕並存成檔案-簡單的截圖操作 - YouTube 
; https://www.youtube.com/watch?v=0swJUkrZqUo&t=66s
; 簡睿大佬的影片的摘要欄即有詳實說明及winclip 網址
; 這是Obsidian+VimMode時,解決不能直接用 P 鍵貼上截圖的初期替代方案
; 使用環境 Win10 + Obsidian/VimMode + SNIPASTE 截圖程式 + autohotkey V1.x版
; 思路及功能 : 
; 按 ALT+F8 呼叫windows SNIPASTE截圖
; 截圖後,用ahk winclip 方法, 把圖片直接存檔到Obsidian的庫裡及取得圖片的路徑
; AHK 做成ob圖片語法塊, ![[圖片路徑]], 存到系統剪貼簿
; ✌在Obsidia/Vim 就能用 p 鍵貼上截圖了✌
; 🎉重點是 維持 ob/vim/normal mode🎉
; ;;;;;;;;;

; 期待有大佬能優化這個功能
#SingleInstance force

#include C:\MkAhk\finished\WinClip\WinClipAPI.ahk
#include C:\MkAhk\finished\WinClip\WinClip.ahk
!F8::
    ; snipaste 的預設值是用 F1 叫 snipaste 截圖

    send {F1}
; 這是Obsidian庫的路徑,自行修改即可
_vaultpath = C:\Data\onedrive\Proged\obsidian\ObsidianVault\
    sleep 300
    filename00 = SCREEN-%A_YYYY%%A_MM%%A_DD%-%A_Hour%%A_Min%%A_Sec%.png 
    imageFile00 = %_vaultpath%99-attachments\%filename00%
sleep 333
    ClipWait, 1
    sleep 333
    WinClip.SaveBitmap(imageFile00, "png")
;msgbox %imageFile00%
    linkjpg00 = ![[%filename00%]] 

    sleep 222
    clipboard = %linkjpg00%
    sleep 222
    ClipWait, 1
    sleep 333
Return


1 个赞

很感谢!果然ob还是太需要自己折腾啦。
这个思路核心就是用ahk把截取到的图片自动保存到ob库路径,再按照路径生成wiki链接并发送到剪贴板。
不过这个方法也有一定缺陷,一是外挂ahk脚本用点麻烦,二是每次保存图片只能通过截图的方式,不能直接ctrl-c,三是每次截取的图片都会保存到库里,即使可能这一次截图截的不太满意,这就还需要删除。
可能更好的解决办法还得看ob vim粘贴时候的源码再编写插件吧。希望官方能完善下这方面的体验。 :smiling_face_with_tear:

1 个赞

請問大佬

ob/vim 指令要怎麼操作,才一鍵(或兩三鍵)刪除代碼塊(含其中的文字跟空白行), 謝謝
(希望在 ob/vim/normal 就能完成) 謝謝

用Advanced Paste设置为默认粘贴

可以在NormalMode中粘贴图片

不过好像不适配Excalidraw和Canvas这类文档

1 个赞