Vim Part31 (738レス)
1-

85: 2023/01/11(水)16:43 AAS
>>84
全部基本コマンドだと思うが…

一応
5行下って1単語進み、単語をカットして2行下る操作をqに記録し即再生、(無意味に)一単語進んでバッファの初めに戻りカットした単語を貼り付け

qのマクロを活用してない(ループが完結してない)コード片だから、適当じゃね
86: 2023/01/11(水)17:06 AAS
ごめん違う、本来に無意味
qdでdに記録始めてd使ってないし、次のq@wでまた謎のwを引用しようとしてるけど、q@がレジスタ名として多分不正だから無意味、最後のpはqのタイポ?

やっぱマクロは闇だわ
87: 2023/01/11(水)17:14 AAS
面白いー
88
(1): 2023/01/11(水)17:52 AAS
マクロの直打ちは辞めた方が…
実際にUI開いてqで記録、:regで中身を見て手直しするもの
:helpにある再帰やループマクロのテンプレだけを知ってればよくて、あとはそこへそれを突っ込むだけだ
89
(3): 2023/01/16(月)13:52 AAS
neovim 0.6.1です。
一つ目のターミナルでファイルをviewで開き、
もう一つのターミナルで同じファイルを編集可で開いて編集した後に
一つ目にカーソルを戻すと2つ目のターミナルで編集した情報が自動で反映されるのをオフにしたいです。

set noautoread
を入れたのですが、
W11 ファイルは編集開始後に変更されました
というワーニングが出てくるようになりました。
このワーニングを出ないようにするにはどうすれば良いですか?
90
(1): 2023/01/17(火)00:51 AAS
FileChangedShellで何かすれば消えるっぽいから
autocmd! FileChangedShell * echo “”
とか
91
(2): 2023/01/18(水)16:20 AAS
>>88,89
無条件で黙らせると知らぬ間にswapファイルが溜まりそうな予感が

viewとして呼んだならv:prognameやv:argvに'view…'みたいなのが入ってるはずだから
:if v:argv[0] =~ 'view\s'

:if v:errmsg =~ "^E11"
のようなアドホックなチェックがまず思い浮かぶ
行儀良くしたいならviewモードを示すフラグくらい存在するはずだし、1プロセスで複数のモードを使い回すならバッファローカル版(b:~)の方がベター

>>82
普段から対話的にvimを使ってるなら学習コスト0というシームレスさがいいね

シームレスさを追求した代償にvimscriptはexコマンドの拡張という"スクリプト言語として"は悍ましいモノが産まれたが
一方でexコマンドの拡張として見ると自然だったりする
:ifなど制御構造が閉じなくても良かったり、|で区切れたり奇妙に見える部分はシェルやsystem関数からコマンドとして呼びやすく、という配慮
-c ':g/pat/ :if 80 <= line("$") | :trimit'

:if, :while, :for, :letなど基本制御コマンドと、:silent, :redirなどi/o制御、自動で設定される変数類v:...だけ借りて、他は:normal/:executeで手に馴染んだ事だけをやる
normal/ex以外は修飾/特殊文字を引数へ埋め込むのが気持ち悪いが、少し欲しい時にはエスケープ構文(<Esc>、<C-Left>等)が重宝

vimscriptでプラグインなんて書き始めた奴らが諸悪の根源
92: 2023/01/18(水)16:55 AAS
>>47,70
(単純な)制御構造が必要か?が使い分けの目安

一応:t label(直近のs///で置換が行われればgoto)や:b label(goto)を駆使すれば:ifや:whileをエミュレートは可能だが
気が狂わんのか

そもそも-iオプション付きのsedはストリーム処理である意味が無いから、ストリームの無駄使いでしかない論理的に誤った使い方
ポータビリティ云々を気にするなら、最低でもマルチライン処理とバッファリングをサポートしてるedを使え
sedより高機能だし、patchコマンドもネイティブ入力フォーマットとして自動認識する(外部edを呼ぶか独自エミュレート)
93: 2023/01/18(水)17:32 AAS
機能というより、ストリーム処理とバッチ処理の区別がついてないんじゃないの
holdバッファを駆使して高度な処理をやればやるだけ、行毎に再スキャンを繰り返すストリームエディタはCPUとメモリを急激に食い潰す

一度メモリに収めて終わりで済まないサイズならsplitで分けてマルチプロセッサを活用
小さくてもいいから一時ファイル専用のSSDが用意できればベスト
ハードウェアを活用しろ
94: 2023/01/18(水)19:23 AAS
>>89
>>91
view --servername #[デフォルト名view1]のようにエイリアス定義しておくとうっかり.swp増殖防止に役立つ

viewは役割上シンタックスを沢山読む/カスタムしていると編集用vimの設定と衝突しそう
個人的には分けた方が良いと思う

体感一秒足らずだけどラグいのが一つと
明示的な--servername NAME指定無しの --remote* excmd/key/fileは自身のargv[0]を見てNAME1..を探すこと
vimとして起動してviewモードに切り替えて使っているとプロセス名はvim1のようになる
デフォルト機能で済む処理だから手の空いてる汎用vimという意図で無指定のコマンドを送ると、先のvim1(viewモード)プロセスに誤爆する
たぶん
95: 2023/01/18(水)19:35 AAS
サーバとして稼働できるようになって起動ラグ無し、履歴やレジスタも勝手に同期してくれて便利になった
一方で状態共有に特有の罠もある

デフォルトのサーバ名はプレーンなvimとして呼ばれる想定で予約しておくべきか
96: 2023/01/18(水)21:28 AAS
>>91
オプションreadonly, roはバッファローカル
(変数参照式として&ro)
97
(1): 2023/01/18(水)23:03 AAS
>>90
対話モードでキープレスやechoでエコーエリアを上塗りクリアは禍根を残しそう
:messや:redir先のファイルへ謎の改行が混入したり、デバッグレベル依存で止まったり

とりあえず:silent!で黙殺するか、
:try | :call MyFileChangedShell | :catch /E11:/ | :set noro | :endtry
こんな雰囲気で行けない?MyFileChangedShellやcatchの中は適当
遷移自体は済んでいるのか、フック用に~Pre/Post版があるか、など発動条件依存なのでヘルプ参照
98: 2023/01/18(水)23:15 AAS
いつまで偽物の Vim の話してんだよ
99: 2023/01/19(木)17:36 AAS
>>97
最初の質問とヘルプを読めよ
100: 89 2023/01/25(水)09:35 AAS
>>89です。レス遅くなりすみません。
皆さんご意見ありがとうございます。
どれも一長一短ありそうでなかなか根が深いですね。。

ひとまずいくつか試してみます。
101
(1): 2023/01/30(月)19:29 AAS
ヴィムでマークダウンのプレビューとアウトライナー(ヘッダーの)ってありますかね?
102: 2023/01/30(月)19:32 AAS
emacsでもいいです
vscodeはテキストエディタ感がないので
103: 2023/01/30(月)22:16 AAS
よくねーよ
104
(1): 2023/01/30(月)23:10 AAS
>>101
プレビューはあるね
105
(2): 2023/01/31(火)05:19 AAS
>>104
マークダウン向きではないエディタなんでしょうか
106: 2023/01/31(火)08:48 AAS
pluginはあるからグクって
基本、基本
107: 2023/01/31(火)08:56 AAS
はい(´・ω・`)
かなり難しそうで
108: 2023/01/31(火)08:56 AAS
Quiver、Bear、Inkdropみたいな操作性はVimのPluginでも無理
お金払ってそっちをつかえばいい
109
(1): 2023/01/31(火)10:51 AAS
>>105
プラグイン入れると一般的なブラウザでリアルタイムビューできる
良くできてると思う
エディタはVimでVSCodeをMarkdownビューアにする手もあるかも
VSCodeのMarkdownビューアも良くできてると思う
VSCodeは嫌いで使ってないけど
110: 2023/01/31(火)11:15 AAS
>>109
マルチプラットフォームのやつ探してるんですよ
でもvscode開くのは気が重い、、、
111: 2023/01/31(火)11:17 AAS
ブラウザわざわさ嫌なので、glow使ってるよ
112
(2): 2023/01/31(火)13:06 AAS
自分はプレビューはこれを使っている
外部リンク[nvim]:github.com

LSP導入が必要だけどプレビュー以外のmarkdownの編集・操作は大体marksmanでいける
外部リンク:github.com
113: 2023/01/31(火)14:07 AAS
>>112
vimでやるにはブラウザ開かないとイケない感じですか?
マークダウンプレビューは諦めて、ヘッダーの色付けと(サイドバーに)アウトライナーだけ欲しいという場合はvimで可能でしょうか?
114: 2023/01/31(火)14:23 AAS
markdownえでいたのobsidian癖が強すぎて諦めたところです(´・ω・`)
1-
あと 624 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.010s