vim Part 6©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
>>1
スレ立て乙
UNIX板のVimスレのリンクが古かったから一応最新の貼っとく
UNIX板 Vim Part24: http://peace.2ch.net/test/read.cgi/unix/1413122189/ 完成したら教えてくれ
5ドルくらいは寄付する
Vimティーで寄付される金額も確かそんなもんだった 無知なものからの質問ですみませんm(_ _)m
vimの見た目をいわゆる集中系エディタっぽくできるものでしょうか?
全画面表示で、上下左右に余白を作って表示するような感じです。
例)Writebox
ttp://www.lifehacker.jp/2012/06/120613chromewritebox.html >>9
それ系のプラグインがいくつかあったはず
とりあえずググったら http://amix.dk/blog/post/19744 にいくつか書いてある vimの強さはどんな環境でも使えるとの事だったので、
少し期待してubuntuにwinで使っていたKaoriyaGvimをそのままもっていったのですが、
アーカイブの読み込み中にエラーが発生したと出て使えませんでした。
これはfor windowsと有りましたし当たり前だとは思います。
「どんな環境でも使える」というのは_vimrc等、設定を持ち越せるというだけで
他のデータは新しくダウンロードするという解釈でよろしいのでしょうか? >>13
やはりそうなのですね、有難うございます。 http://livedoor.blogimg.jp/itsoku/imgs/9/d/9dddf262.png
この人と同じ環境を作りたいんですが、初心者なのでよくわかりません・・・
必要なもの全部、教えてくれませんか? >>15
その画像でわかる範囲だとvim本体とvimshellというプラグイン
OSが何かわからないけどgccでコンパイルしてるみたいなんでwindowsならmingwかcygwin vimshellにはvimprocも必要らしい
http://o.inchiki.jp/obbr/21
プラグインをneobundleで管理するならgit(windowsならmsysgit)
も必要
http://www.jonki.net/entry/20140406/1396773150 因みに自分はQuickRun入れてたけどvimshellも入れてみた
なかなかいいねこれ
vimprocをmakeする必要あったけど >>15
このcolorchemeなんだろう
Tomorrow-Night, jellybeans, hybrid あたりが近いけど微妙に違う >>23
管理者権限のコマンドプロンプトで以下のコマンドを実行してサーバー起動するとどうなる?
netsh http add urlacl url=http://+:2000/ user=ログインユーザー名
参考
http://ja.stackoverflow.com/questions/5855/ >>24
前回管理者権限でそのコマンドを打ちました
参考URLに
>環境変数のUSERNAMEがSYSTEMだった
というのがあったのでuser=SYSTEMでやってみましたが結果は同じでした
http://gyazo.com/a7a7e8bc880946147d6433774601660f
.csファイルを読み込むと画像のように動作を停止しましたとエラーが出ます >>25
え?わかったの?
colorschemeはhybridなんだろうけどコレ↓入れてる影響で違って見えるんじゃないかと・・・
https://github.com/chreekat/vim-paren-crosshairs なんか常に表示されてると邪魔臭いなw
>>27のがいいや >>27
わからないということがわかったからお礼したw
括弧は俺もプラグインで色変わってるからあんま気にしてなかった
カーソルの色が違うのが気になってたけど、それもプラグインの影響か user=Everyone
にしたら解決しました
結局どういうことだったのかよく分かりませんがそのうち分かるようになりたいです
>>24さんありがとうございました 教えてください。
Windows版を使っていますが、vim側で、IMEの背景色を
コントロールできますか?
Windowsの設定をいじると全部に影響が出ますが、
Windows使ってるときと、Vim使っているときとで
変えたいと思いまして……。
ご存知のかた、お願いします。 できないと思う
あまりに特定の環境に依存しすぎ
コンソールでもgVimでも無理じゃない? これって業務用に使っているひとはいるんでしょうか? >>35
ソフト開発会社がソフト開発の為に使っているのかということです。 サーバーの設定変える時にvi(vim)しか使えない時もあるだろうから
多いんじゃない?
もちろんバリバリメインで使ってるよ!って人も多いだろうし
linuxユーザーのみだとこんな感じ
ttp://sourceforge.jp/magazine/15/02/05/153000
まあunix界隈だと使えて当たり前的な空気もあるけど ニュース検索してたらこんなのもあった
ちゃんとやってたんだな
ttp://www.watch.impress.co.jp/headline/docs/kyodonews/domestic/20150130_686121.html
ある世代ってどの世代だよw >>39
すごいよ、すごく癖があるw
使いこなせる人がすごいという噂もあるw .vimrcにリマップを書き込んだコマンド以外のコマンドを全て無効にするってできませんか?
当方Windowsのメモ帳でできる程度のカーソル移動をホームポジションで全部済ませたらなーと思ってVim使い始めたんですが、
ミスタイプで全然知らないコマンド打ち込んじゃったりめんどくさいんで winの香り屋版なんですが
新しいファイル名を引数にして起動しただけで
ディレクトリのタイムスタンプが更新されるのは仕様ですか?
既存のファイルを開いた時は更新されません
directoryとundodirは他のディレクトリを指定していて
nobackupにしています >>43
隠しファイルとか出来てないのに?何だろうね? 確かに新規ファイルを書き出さなくても変わるね
ちなみにkaoriyaじゃない
$vim -u .vimminrc
set directory=~/.vim/tmp
set undodir=~/.vim/tmp
set nobackup
最低限の設定でやっても同じ
何のために変えるんだろう? 新参者なんだが、>>15と似たようなやつでいいんで
設定ファイルとか、まるごと上げてるサイトとか知りませんか? まずLinux入れます
Windowsのコマンドプロンプトは256色だせないしフォントもあまり綺麗じゃない
Windows10は少しマシになるらしいが >>47
あれは単純に画面を vsplit してファイルを2つ開いてるだけでしょ?
あとはカラースキームを適当に選べばいいと思うけど。
具体的に、あの画面のどの部分を真似たいのかを教えてくれないかな。 >>49
vim によるソースコードの編集環境と vimshell による実行環境を連携させて gcc の簡易IDEを実現したい、ということだろう。
自分もあまりよく知らないので、やり方は分からないけど… >>50
そこそこ名の知れているプラグインが入っている自家製gVimってところなのこれ? >>47
githubでdotfiles晒してる奴死ぬほどいるから適当な.vimrc拾ってくればいいと思うよ >>50
うーん、surroundぐらいしかわからん gvimでテキスト量が多い時に、画面の上の方から描画されていく様子が見えて遅いと感じるのですが
ダブルバッファのような設定はありますか? >>55
うーん、どういった環境や条件で遅いと感じるか書かれてないから何ともいえないなあ
とりあえず--nopluginで開いた場合と比べてみれば? 遅くなる原因はわかるんです
カラースキームだったり、DirectWriteやgdi++系でアンチエイリアスをかけた時に画面いっぱいに文字が出ると特に重くなる
そういう時に再描画すると画面がちらついてしまうので何か改善策はないかと思って 根本的にはグラフィックカードの性能だったりするのかも知れないけど
なんとも・・・
解像度がどの位でテキストのサイズ、行数がどの位で遅くなるものなの?
自分はショボいネットブックでもあまり遅く感じないんだけど
さほど巨大なファイルじゃないせいかな?
guifontを変えてみるとか? カラースキームはvim-hybrid、ステータスにlightline.vimのほぼデフォルト
普段は軽い設定でcolumns=200 lines=90 guifont=MS_Gothic:h9
フォントがきれいだけど少し重い設定はcolumns=200 lines=77 guifont=Migu_1M:h9
追加でrenderoptions=type:directx,renmode:5もしくはgdi++系
今はCore i5 3570Kのオンボードだけど
ちょっと前までRADEON HD7750付けてた時と同じ感じだから影響はあまりなさそう
もしかして再描画(Ctrl+L)でちかちかしちゃうのって自分だけなのかな。もしそうならおま環な話だったかも 今コマンドの勉強中で、ブログの文章を書こうとして日本語を入力したり戻したりと
いちいち切り替えるのがイライラします。
だからvimはクソだと思います。以上。 IME制御自動化もいくらでもやりようあるからまあなんだ調べるかエディタ変えろ よく分かんないけどIMEの状態を意識しなくていいエディタがあるの?
ウンコな自動切り替えを便利だと言い張るエディタは使ったことあるけど vimの場合コマンドモードと挿入モードがある上にIMEのオンオフがあるから
煩わしいって言ってるんだろう
自分は常にiminsert=0だけど 香り屋VIMをさわり始めた初心者です
DOS窓からVIMを起動した場合クリップボードからペースト出来ません
GitBashからvimを起動した場合クリップボードからペースト出来ます
DOS窓からGVIMを起動した場合クリップボードからペースト出来ます
何が違うのでしょうか >>67
vim yank クリップボード
でggr tern_for_vimで補完する時に説明ウィンドウが上に表示されるんですけど
英語で何書いてるか分からないので非表示にしたいんですがどうやって非表示にするんでしょうか? win7でteratermを使ってcygwinでのvim7.3を使っています。
(諸事情でバージョンアップなどは出来ないです。)
文字コードはeucです。
UNIXからftpしてきたeucのファイルを
teratermのvim7.3で読み書きするとき、
eucで表示や入力は問題無く出来るのですが、
カーソル移動が半角ずつになってしまって、2バイトの日本語があると
上手く移動してくれません。
set enc=euc-jp
set fenc=euc-jpくらいの設定です。
※lsコマンドでは日本語のファイル名やフォルダ名は問題無く表示されます。
vimの設定か何か、マルチバイト?に対応したカーソル移動が出来る方法があれば教えて下さい。
helpでencoding-names?を見ると
unixonlyとなっているのでやっぱ無料なのでしょうか・・ ambiwidthはutf-8でしか効果ないって書いてあるから違うかな? ターミナルの仕様です諦めましょう
それかgvimを使いましょう win7でunite.vimのブックマーク機能がうまく動作しないんですが、
何か分かる方いませんでしょうか?
フォルダへのパスが書かれたオブジェクトは生成されているんですが、
いざとぼうとして:Unite bookmarkコマンドを入力してもなにも表示されません。 omapって何ですか?
演算待ちってどういう状態のこと? OMAP 【 Open Multimedia Applications Platform 】
Texas Instruments社の携帯電話端末向けマイクロプロセッサのシリーズ名。OMAPシリーズのプロセッサは携帯電話や携帯情報端末(PDA)に採用されている。
組み込みプロセッサ向けとして人気の高いARMプロセッサに同社のDSPコアを組み込んだ構造となっており、音声とデータを統合して少ない消費電力で効率よく処理することができる。OMAPプロセッサのサポートするOSにはLinux、Palm OS、Symbian OS、Windows Mobileなどがある。 教えてください。m(_ _)m
kaoriya版(win)を使っています。
gvimrcで、
nnoremap <C-c> "+y
としたら、ノーマルモードで
Crtl+C で コピーしたいのですが、うまくいきません。
どのようにすればよいでしょうか?
↓こちらは動作しました。
nnoremap <C-x> "+x
nnoremap <C-v> "+gP
ご存知のかた、よろしくお願いいたします。 >>78
たぶんやりたいことは
:so $VIMRUNTIME/mswin.vim
だと思う。
少なくとも mswin.vim を見ればやりたい事の答えは書いてあるよ。 >>79
ありがとうございます。わかりました!!!! m(_ _)m 置換するときとか検索する時の正規表現がよくわかんない
/[はエスケープ必要ないのに:%s/[//gはエスケープ必要
でも/\[ってエスケープしても/[と同じ物がヒットする
よくわからないよ >>81
:h \/[]
を読んから2段落下のE769 (h: E769)を読んでみて。
後ろに ']' のない '[' は '['そのものを検索します。キモなのは '[' 以降の文字も検索対象になるということ。
/[/e+1
は "[/e+1" という文字列を検索する。
/\[/e+1
は "[" を検索して見つかった場所の次の桁に移動する。(:h search-offset)
なので、
%s/[//g
は各行の最初に見つかった "[//g" という文字列を "" に置き換えているのです。
ややこしいので、 '[' を検索する時は常に '\[' とした方がいいかも。 >>82
なんか難しくて覚えられない
とりあえずエスケープするクセをつける windows8&8.1でgvimのウィンドウサイズをマウスで変えたりするとgvimが落ちる。頻発する時もあればそうでもない時もある。これは何なんでしょうか? Windows8は使ってないのでよくわからんがとりあえずは互換モード試せば? >>84
うちは落ちないがパッチのバージョンとかプラグインの問題じゃね?
>>85
今更互換モードの問題かあ? プラグインでした。たくさん入れてないので、同じものをNeoBundleで入れ直したら何故か治りました。 win,mac,linuxで共通のvimrcを管理する場合
vimrc
.vimrc
どっちのファイル名にしたらいいのか教えてください >>88
.vimrcを作って、_vimrcはシンボリックリンクにすればいいんじゃない。
逆でもいいけど。 QuickRunの設定で'hook/time/enable': 1すると
pythonのコードでprint(1)を表示するだけので:QuickRunをすると
実行結果が1sぐらいで終わっているのに実行時間の表示がかなりおそく10sとか表示されます
なんでですか? OmniSharp(C#用補完プラグイン)を導入しようとしてる者です。
便利そうなので是非導入したいのですが、自分の環境だとうまく動かない。
パスに日本語が入ると、正常に動作しない状況です。
.vimrcで指定するencodingによっても挙動が変わるみたい?
以下問題の内容(Vim:7.4.648 Kaoriya 64bit OS:Win8.1 64bit)
*encoding=UTF-8の場合
-ユーザ名がASCIIのみの場合は正常に動作する
-ユーザ名に日本語が含まれる(OmniSharpの実行ファイルのパスに日本語が含まれる)場合
(例) C:\Users\日本語ユーザ名\.vim\bundle\omnisharp-vim\
--起動時にominisharp-vim\python\Completion.pyとomnisharp-vim\python\OmniSharp.pyまでのパスが化けて「No such file or directory」
化け方としては、日本語ユーザ名の箇所が「\xe3\x83(以下略)」 とバイナリ値がエスケープされたままで渡されてるみたい
--OmniSharpを起動できない(:OmniSharpStartServer してもサーバーが立ち上がらない)
*encoding=CP932の場合
-サーバーの起動は「:OmniSharpStartServer」で正常にできる(ユーザ名が日本語かどうか関わらず)
-サーバーとの通信が一切できない
オムニ補完(c-x c-o)しても「パターンは見つかりませんでした」と出る。OmniSharpBuildAsyncなどのコマンドも同様。
サーバーの表示は「Solution has finished loading」以降変化無し
同様の問題が再現する人はいますか?
githubで質問できれば良いんだけど、英語が苦手ですしVim初心者ですしおすし プログラマという人種は本能的に日本語のディレクトリ名を避けるものだと思っていた 今まではそうしてたんですけど、
仕事用のPCはアカウントが日本語で作られて支給されたんだ・・・
どうにかできませんかね? runtimepathをいじれば行けそうな気もするが、ユーザ名変えた方が良さそうだと思う。 わかりました
別にユーザアカウントを作成して対処したいと思います。
レスくれたみなさんありがとうございます au BufRead,BufNewFile *.hsp source D:/vimscripts/myscript.vim
拡張子hspの時だけD:/vimscripts/myscript.vimを読み込みたいんですが読み込まれません
source D:/vimscripts/myscript.vimだけ書いたら読み込まれたのでパスは合ってました
どうやって*.hspのときだけ読みこませられますか? ファイル名で問題起きるとしたら、日本語よりスペースの方が多いだろう。 スペースは起きやすいけど""使えばすぐ直せるでしょ 今どきのGUIエディタのように、カーソルをキャレットに出来たらなあ
カーソル前カーソル後の使い分けがめんどい KaoriyaGVim使ってるんだけど、文字コードをutf8にすると例えばエラーウィンドウ(GVimのメニューにあるやつ)の表示文字が化ける。日頃使わないからいいんだけど、他にも支障がありそうだが大丈夫か? >>103
「大丈夫か?」と心配する必要があるのはお前自身とお前の環境 ってことはあの問題は解決したんだろうか。
windowsで使う分にはシェルとの兼ね合いもあって、結局cp932が無難だと俺の中ではおさめといたんだけども。
板違いだってことならそれはそれで。 >>105
すなおじゃないっつーかひねくれモンっつーか
使ってみて問題があったらvim-jpに報告したらいいじゃん >>103 != >>105 == 俺 なんだけどさ。
使ってみて問題があったし、そも当時koronも認識してて面倒な展開になってたと思う。
別にcp932で問題があるわけじゃないから、別にいいやと思ってるんだよ。 <TAB>hint,
<TAB>device,
<TAB>index,
ではなく、
<TAB>__hint,
<TAB>device,
<TAB>_index,
のように、タブで右端のカンマを揃えて欲しい(この文脈の _ は空白の意)
そんなネオタブはどうつくりますか? Tabではじつげんできなかったが、
Align.vimによって実現できた
:AlignContrl >
:%Align \w*, unite-outlineでCのソースコードのアウトラインを表示できません
:Unite outline としても開かれるバッファは空でなにも表示されません
使用ソフトは
kaoriya版vim 64bit
windows8.1 64bit
ctags5.8J2
なのですが、64bitでは正常に動作しないのでしょうか? MSYS2パッケージのVimはruntimepathはC:/hogeで通してくれるのに:cdは/c/hogeじゃないと怒られちゃうな
expandで変換できたらいいのになぁ
このパッケージ、+lua対応してくれないかな・・・ luaだけハブられてんよ >>112
cygwinのcygpathみたいなコマンドないんです? >>113
詳しくは分からんが:helpにはそれらしいことは見当たらなかった WindowsならWindows用のバイナリを使えばいいじゃん
なんでわざわざcygwinで使おうと思ったの
そもそもcygwinなんて使うなよlinux使いたいなら仮想環境を構築したほうがいい
cygwinなんて所詮おもちゃだから gnupackならcygwinと同時にvim単体もついてる(ついでにemacsも)
gitクライアントについてるmsysと普通のcmdと3つを場合に応じて使い分けてる
windowsのコマンドプロンプトはminttyに比べて色々残念 ちょっと面倒な現象を見つけたので、再現スクリプトを張っておきます。
32bit kaoriya版 OSはXPというトホホ環境ですが他でも起きるかもしれないので。。
gvim を vim に置き換えても同様でした。
"--------------
" test.vim -- 通常起動したgvimから :source する。
cd $VIM
exe ':!start gvim.exe -u NONE -U NONE -c "set noshellslash" --servername NOSHELLSLASH --remote-silent File1'
exe ':!start gvim.exe -u NONE -U NONE -c "set shellslash" --servername SHELLSLASH --remote-silent File2'
sleep 3
echo remote_expr('NOSHELLSLASH','getcwd()') remote_expr('SHELLSLASH','getcwd()')
" => 両者 $VIM を作業ディレクトリとして立ち上がった。
cd $TMP
exe ':!start gvim.exe --servername NOSHELLSLASH --remote File3'
exe ':!start gvim.exe --servername SHELLSLASH --remote File4'
sleep 3
echo remote_expr('NOSHELLSLASH','getcwd()') remote_expr('SHELLSLASH','getcwd()')
" => SHELLSLASH のみ、作業ディレクトリが
" 「このスクリプトを実行しているgvimの作業ディレクトリ」へ変更されている vimは日本語の文章を入力するにはあまり便利でないね。
コマンド入力の為にいちいち半角/全角キーを打つのがめんどくさい。 お、サクラ(エディタ)か?
と思ったら意外にもterapadでなあ
まだユーザーいたのかと思ったぜ >>120
ノーマルモードでは英数になるようにIME自動制御するよろし S・K・K!の大合唱で埋め尽くされると思ったらそうでもないんだな 今の時代、日本語入力モードも自動化されてるのか。オッサンだから毎回ON/OFFしてるわ。寧ろ勝手にされるとストレスが溜まる msys2のvimが大変気に入ったんだがインサートモード抜けるときに
IMEをOFFにする方法はないものか >>126
やり方がよく分からないんです。
ちなみにグーグル日本語入力を使っています。 >>129
これってMinttyが制御コード対応しないと根本的な解決にならないんじゃないの? MSYS2でVimとCygTerm+をビルドして
TeraTermとBashをCygTerm+で繋いだら概ね満足
カーソル形状とIMEの制御コードは自分で.vimrc等に書く ; とか ` とかファイル名の先頭にあると食っちゃうな。:dropすればいいじゃんと思ったら今度はダメ文字ったw
:e と :b の挙動とかパス周りは色々めんどいね、勉強にはなるけど。 GvimにNeoBundleを使ってQuickRunのプラグインを導入しようとしているんですが、
環境変数の設定が上手くいっていないらしく、cpp/vcでのコンパイルができないのです。
環境変数のINCLUDE,LIB,LIBPATHには何を設定すればいいのでしょうか?
環境は
OS:windows7 64bit
使っているVS:VisualStudio 2013
です 本体に関係しない質問は当該プラグインのgithubでも行けばいいとおもう >>140
たらい回しw
Githubにissue作るか、スタックオーバー風呂の方が良さそうだな lingrアカウント取って聞くかgithub.com/vim-jp/issueで聞くのが最も解決が早いだろうな。
Sh●ug●以外は初心者に優しいから親切に教えてくれるよ。 つうかquickrun visual studioでぐぐれば答えがわんさか出るわけだがw >>141-144
もう一度よく調べなおして熟考したところ、なんとかコンパイルできるようになりました。
皆様ありがとうございました。 >>145
考えただけでコンパイルできるようになったとは凄いな expand('\(globpat1\|globpat2\)')
これって他の処理系でも使える表現かな。便利〜
と言いたいが入力文字列中の \( が \) で閉じていないとにエラーにされて欝だ。。
glob()と住み分けて欲しかったナリ ごめんだいぶ嘘書いたwエラーが出るのはかなり特殊なケースだったョ
win版でのみ再現 echo expand('\(\$\(\)\)[]') expand()は挙動が謎なところがあるな。OSによって b でこけたり c でこけたり。
let a = "$VIM $VIMRUNTIME"
let b = "$VIM \"$VIMRUNTIME\""
let c = "$VIM ' $VIMRUNTIME"
echo expand(a)
echo expand(b)
echo expand(c) vim限定の話じゃないけどお前らwindowsで%HOME%ってどこに設定してる?
すっごい悩ましい %HOMEDRIVE%%HOMEPATH%
(%USERPROFILE%)
じゃろか? データドライブ別に作ってそっから /home/username だなあ。 msysgit入れ直したらneobundleで何も出来なくなって焦った Vimの事で助けて欲しい。
以下に要件を書く。
・問題
GVimでvim-quickrunを動かそうとしてもコンパイラを見つけられずに失敗する。
http://www.dotup.org/uploda/www.dotup.org647907.png
・環境
Windows10 64bit
MSYS2 64bit
zsh
GVim Kaoriya版
gcc (mingw x64)
・やったこと
set shellslashでパスにスラッシュが入るようにしてみた。→効果無し。
各ソフトウェアの再インストール→効果無し。
Kaoriya版でないGVimを使用。→効果無し。
rubyやpythonで試してみる。→同様に失敗。
msys2+mintty上のVimから実行。→普通に動作する。(MSYS2とコンパイラ自体には問題なし?)
同一の.vimrcを使用して他のプラットフォーム上(OSX、Debian、Manjaro Linux)のGVimから実行。→普通に動作する。(.vimrcには問題なし?)
・備考
他にも:NeoBundleCleanでpluginの削除が行えない(ファイルを見つけられずに失敗する)などの問題がある。
ただし:NeoBundleInstallや:NeoBundleUpdateは普通に可能。
$PATHはC:\MSYS64\user\bin、C:\MSYS64\mingw64\bin、C:\MSYS64\mingw32\binに通している。
set shellslashで解決しなかったので完全にお手上げ。ググっても同じような解決法しか見当たらない。
教示を願いたい。 >>157
試しにBashからKaoriya版GVimを起動してみたが
外部プログラムのパスはshellslashがオンでもバックスラッシュのままだったよ
コンパイラの設定には'gcc'とだけ書いとけばいいんじゃないか >>158
返信ありがとう。
あの、もしかしてWindowsで使う場合は特別な設定が必要なのか?
三行目の意味がよくわからないのだが…。
ちなみに、普段はsetfで言語を指定した後に「\r」で実行している。
:QuickRun 言語 とか、:QuickRun gccも試してみたが結果は同じだった。 kaoriya版に付属のvimrcを壊した?
vimをアンインストールしてvimrcも削除して一からやりなおせ
NeoBundleのインストールも失敗してるんじゃないのかね
ちなみにNeoBundleは初心者向けプラグインじゃないって作者自身が発言してる
とりあえずvimをインストールしたらまずNeoBundleのインストールして動作を確認するところから始めてみては
うまくインストール出来てるのを確認したらquickrunをインストール
「windows vim neobundle quickrun インストール」とかでぐぐって設定方法を見つけて gccへのパスにバックスラッシュが使われてるのが原因でshellslashオンにしても効果は無いってことでしょ
:h quickrunなり検索するなりして自前の設定を用意するのがいいんじゃないかな
UNIXシェルの時はMSYSでビルドされたVimを使うのが無難だとは思うが
Luaが必要なら自分でビルドしないといけないけどね >>160
いや、壊していないが(そもそも手を付けていない)、
再インストールは何度もやった。
NeoBundleのインストールなんて実質的にはgit cloneで持ってくるだけだから
失敗する方が難しいと思うのだが、これも何回かやってみた。
しかし、いずれにしても結果は変わらなかった。
ちなみにこれらの問題は俺の場合、Windows10でのみ起こっている。
Windows7や8、8.1では起こらなかった。
同じ.vimrcを使っているし、使っているpluginや環境も同じだ。
Windows10のせいかと思ったが、同様の報告が挙がっていない所を見ると所謂「おま環」なのだろう。
しかしいまさら以前のOSに戻したくはない。 何回もインストールしたじゃなくて問題の切り分けをしないと解決しないでしょう? 157さんと似た問題の解決方法教えてください
Win8
Cygwin
vim74kaoriya
NeoBundleインストール済み
なぜかNeobundleコマンドをvimから使えません
_vimrcの内容は以下です。(winでも.vimrcでいいのでしょうか?) " vim起動時のみruntimepathにneobundle.vimを追加
if has('vim_starting')
set nocompatible
set runtimepath+= C:\vim74-kaoriya-win64\.vimbundle\neobundle.vim
endif
" neobundle.vimの初期化
" NeoBundleを更新するための設定
call neobundle#begin(expand('C:\vim74-kaoriya-win64\.vimbundle'))
NeoBundleFetch 'C:\vim74-kaoriya-win64\.vimbundle\neobundle.vim'
call neobundle#end()
" 読み込むプラグインを記載
NeoBundle 'Shougo/unite.vim'
NeoBundle 'itchyny/lightline.vim'
" 読み込んだプラグインも含め、ファイルタイプの検出、ファイルタイプ別プラグイン/インデントを有効化する
filetype plugin indent on
" インストールのチェック
NeoBundleCheck Windows持ってないから知らないけど
\は\\って書かなくていいのか?
c:\vimってvをエスケープする扱いにならないの?
/に書き換えたらどうなる? >>166
レスありがとうございます。
.txtファイルで保存していたからだめでした。
UNIXとの違いに戸惑いますね。
あとはうまくいきそうです http://anond.hatelabo.jp/touch/20151222002334
よほど鼻持ちならないvimmerが身近におるんやろうなあ
しかもひっくり返っても勝てないんだろう
ブログですらなく匿ダでぶー垂れるあたり 言い返せる理論がなくて匿名か実名日で測るお前のほうがロクでない ほらな、話をそらさないと言い返せない
そこがダメなんだよお前 ここで八つ当たりしてないで記事書いた奴に意見を投げればいいのにね。
以後単発荒らしさんをスルー推奨。 真っ先にスルーできなかった人に言われても説得力が… まあ、このブログは読んでないけど
vim の環境作ることに命かけてる人とは一緒に仕事したくないな
vimrc が100行以上あるとかね vimrcが100行以上ある人は
init.elがもっとある .bashrcは?
.bashrcは長くても認可されますか? 個人的にはEclipseでなければなんでもいいんだ
あのゴミを薦める神経だけは理解不能だ 自分の良くやる作業の効率するための環境づくりももできない奴には言われたくないわ vimprocが使いにくい
もっと簡単に使えるプラグインないすか >>177
新人か?
451行じゃないと古参に受けないぞ、やり直し @行末の一文字だけとっとと消す。但し現在のカーソル位置は維持する。終了時はコマンドモード
っていうのはできますか?
A行末に;や,をつけ忘れたのでポンと足す。但しカーソル位置は維持する。終了時はコマンドモード
っていうはできますか? 現在行に置換を実行すればどうとでもなるんじゃないですかね
:s/.$//
:s/$/;$/ >187
こうか? そういうことをしたいときは :help mark すると幸せになれると思う
ゴルフするなら行末削除はdlじゃなくてxなんだけど好みなので
m`$dl``
m`A;<C-[>`` ああ、やっぱそんだけ叩かないとダメです?
2キー程度を想定してたんですが よく使うんなら操作の意味を理解しつつ何回かやればたぶん指が憶えるんじゃないかな
行末削除なら「現在位置をマークして、行末へ移動し、一文字削除、マークした位置へ戻る」ってやってる
まあ、どうしても短縮形が欲しいなら適当なキーへmapすればいいんでない? 念力でESC入力するテレパシーデバイスが出ればVimライフがもっと快適になるのでは
親指にはめて、微弱な電波を読み取ってESCとか、カメラで顔を撮影して瞬きするとESCとか emplace_back( nanika );
emplace_after( nanika );
に変えるとき、アンダーバーの後でカーソルが止まってくれる事を期待してwを押しますが(まで進んでしまってがっかりします
驚き最小の原則に反していますね
それともアンダーバーを区切りと考えている私の考えこそが、皆さんにとって、驚き最小の原則に反しているのでしょうか? >>194
プログラミング言語的には「emplace_back」「emplace_after」で
それぞれ一つの識別子なんだから、「(」まで進むのは自然でしょ。
この動作に不満があるなら、'iskeyword' オプションの値を
変えれば済むことだし。 普通ならそういうネーミングにするくらいならオブジェクト志向で纏める 最初スネークケースにciwして全部消えてガクッと来ることはあったけど慣れた マニュアルにwordの定義が書いてある
お前が勝手な思いこみでwordの定義をしたから驚いてんだろ
マニュアル嫁ぼけ *word* A word consists of a sequence of letters, digits and underscores, or a sequence of other non-blank characters, separated with white space (spaces, tabs, <EOL>). This can be changed with the 'iskeyword' option. An empty line is also considered to be a word. 空行もword扱いだって意識したことなかったなあ。これ、VimカルトQに出ますね! 「驚き最小の原則」をやたらという人に限って、
単に自分の好みを押しつけたいだけだったりするよね。 そんな大それたこともない
覚えたてだから言いたかっただけ msys2版ってもっさりしてるね
cygwin版にしても同じですか?
なんとかtmuxと快適なvimをwindowsで使いたい ttps://ttssh2.osdn.jp/manual/ja/usage/tips/vim.html
cygterm+teratermでは縦分割のスクロール以外で遅いと感じることは無かったな
ESCのマップには触らずttimeoutlenだけ調整してる setfiletype に設定できるファイルタイプの一覧ってどこで見られますか?
helpgrep で verilog とかやってみたけど、ファイルタイプそれぞれ個別の説明みたいなところしかヒットしなかった。 ほんとだw msys2でctrlpめちゃくちゃ遅いな >>206
$VIMRUNTIME/ftplugin/*.vim の拡張子を除いたファイル名一覧かな(別目的で*.vimが存在する可能性に注意
:helpgrep filetype\.vim
あたり一通り眺めるとvimが何してるか分かると思う gvimをよく複数ウィンドウ開いちゃうんですけど
一つウィンドウ開いてたらどっかからgvim呼ばれた時に新しくウィンドウ開かずに新タブで開くように出来ませんかね
つまり新規バッファの取り込み? >>212
コマンドに --remote-tab 付けるように設定変えたらタブで開けるよ >>213
ありがとうございます。かなりやりやすくなりました!
ただgvimをどんな場面でも--remote-tab付にしたいとなると結構難しいものですね…… ttps://github.com/thinca/vim-singleton >>214
俺はこんなふうに設定してる
http://i.imgur.com/LrKVAWl.png
拡張子「*」に対して設定してるので、どんなファイルでも右クリックすれば
「Open with VIM」が選べるので便利。 >>215
ありがとうございます。これは楽ですね。ファイルを配置、.vimrcに一行で済むんですから
ただ使ってみましたところ自力でやったのと大差ない状況です。renamer.vimだけ失敗して新しいウィンドウを開かざるをえないようです
>>217
ここWindowsのスレでしたね、お邪魔しました…… >>208
うお、レスもらってた。
そこに入れるためにどういうファイル名にするべきか調べたかったんですよ。
ご教示の help 調べてみます。 外部dllのためにコンパイルしたら外部dllに対応させるオプションが付いてたでござる cygwinでaltキー含めたキーバインドの設定の仕方がようやく分かった
x <A-;>
x <M-;>
o ^[;
見えにくいのを打ち込まないとだめだな 某松がvivi馬鹿にしてるけど
実際viviってwindowsのシェアウェア界で秀丸の次くらいに有名だし
かなり売れたっぽいよな >>224
> viviってwindowsのシェアウェア界で秀丸の次くらいに有名だし
さすがにそれはない。 >>224
作者さまの降臨ですか、お疲れさまっす! まさか
>2001年当時の日本における株価時価総額上位50社のうち18社が法人ライセンスを購入していると作者は主張
こんな凄いエディタの作者がこんなところに来るはずがありますまい (ViVi・・・。ふーんそんなエディタあるんだ。名前だけ聞いたことあるような?)
そう思って他の用事に取りかかろうとした矢先だった。
(あれっ・・・?おやっ・・・?待てよ・・・シェアウェア?viクローンなのに?)
なんとなく気になって調べてみて衝撃を受けた。
> シェアウェア4,000円 (個人向けライセンス料金。法人向けは6,000円)
まじすかはは・・・wグーグル先生によるとgvimのない昔は有名だったみたいデスネ。いろんな世界があるなあと思いました(白目)。
そんな僕はneovimを強くプッシュしていくのでよろしくお願いします。 vim化chromeエクステで使ってるやつ教えてくれ
vimiumからvichromeに乗換検討中 >>229
viクローンじゃ無いから
ヘルプより
vi クローンだと思っている人もいるかもしれませんが、そうではありません。あくまでも vi コマンドもサポートする Windows 用テキストエディタです。 >>229
neovim、windowsでも使ってる? >>231
vimium使用してる。vichromeは未体験なので使ってみる。 chromeのvimperator系プラグインは本家vimperatorに慣れてれば慣れてるほど使い勝手が悪く感じるという。
xulじゃないから仕方ないんだけどね。 bashがネイティブサポート決定で
このスレの仕事ももうすぐ終わりだな
お疲れ様でした ubuntu modeをネイティブと呼ぶのは正しいのか?
発表された当初はelfフォーマットをpeフォーマットと同じように読み込めるようにしたのかと思った
全然違った とりあえずgvimは使えない模様(*現段階では+X Window Systemはサポートしないらしい)
たぶんvimは普通に使えるんでない 日本語はちゃんと扱えるん?
俺vimでポエム書いとるよ? いつもありがとちゃーん!>0409
最近は色々混ざって大変そうね jsonのsyntax、未だにケツカンマで赤色になるのね >>245
それが嫌ならViを止めるかJSON書くな >>245
未だに、ってどういう意味?
ケツカンマ許容する仕様/実装が標準なの? >>247
お前は仕様理解してるだろ
理解してるくせに態とらしく問いかけるなクソカス >>248
いや本当に自信がないというか調べてもよくわかんなくて聞いたんだよ
気に障ったならごめん、、 超いまさらながら &display つーオプションの存在に気がついた。 set display+=lastline
グッバイ@@@@@@@@@@ ラノベとか詳しくないんだけど横書きで書いてても違和感ないもんなの? 明朝じゃなくゴシックで表示するなら横書きラノベも可也 どうせあとでLaTeXで縦にくみはんするから関係ないね ☆ 日本の核武装は早急に必須です。☆
総務省の、『憲法改正国民投票法』、でググってみてください。
日本国民の皆様方、2016年7月の『第24回 参議院選挙』で、日本人の悲願である
改憲の成就が決まります。皆様方、必ず投票に自ら足を運んでください。お願い致します。 俺はvimでなんでもやろうとする思想は好かね
それはeのつくクソエディタの後追いである コマンドプロンプトで何でもやろうとする奴の方がまだマシだわ
あれは必要悪(情弱会社対策)でもあるからな なんて恐ろしいことだ・・・vimでなんでも出来るからってまさかあんなことをするなんて・・・ エスケープキーの位置が肝だな
ペダルキーの導入も検討しよう neovimサポートするプラグイン増えてきて波きてる感ある *.sql などのファイルを開くとキーワードに色づけされますが、
これを任意でやる方法ってありますか?
やりたい事としては、無題バッファにSQL文をはりつけ、
その後にキーワードに色づけをしたいです。
Windowsの香りやバージョンを使用しています。 >>273
:setf sql
とか
:set syn=sql
とか :Eでエクスプローラーを開いていたのですが、ある日:Errorsというコマンドと競合するようになってしまいました
このコマンドを定義しているプラグインを調べるにはどうしたら良いですか?またそれを殺す方法も知りたいです。
お願いします >>278>>279
vimでおまえらを燃やしたい kaoriya vimにvimproc入れるのやめて欲しい
本家に含まれないプラグインをまぜんなよと え、なんで直接本家使わないの?
馬鹿なの?死ぬの? 本家をKaoriya相当にするにはプラグイン揃えるだけじゃなくて自分でコンパイルしないと駄目なの? 本家に含まれないプラグインがどうのこうのと寝言ほざいてるのが上にいたけど
プラグインどころか本家に含まれないパッチも当たってるからね ぼくはkaoriyaパッチが当たってるvimがつかいたいんですよ
第三者のプラグインなんていらないんです ( ´・ω・`)知らんがな♪ (´・ω・` )知らんがな♪
( ´・ω・`)知らんがなったら♪ (´・ω・`)知らんがな♪ 2. 厳密にはvimじゃないのでvimmer(笑)と言われない 3. メモリアロケーション時のNULLチェックがおこなわれていないのでLinux以外では論外 gVimなんですけど、挿入モードでF10とか押すと<F10>が入力されるのを回避する方法を教えてもらえますか? >>306
innoremap <F10> <Nop> >>307
ありがとうございます。remapで良いとは意外でした。勉強になりました。 まだvery magicをデフォルトに出来るようになってませんか? vimgrep で foobar を含まないという検索はどうすればできますか? もう2ちゃんをみてる人少ないからteratailとかスタックオーバーフローで質問したほうが確実に回答貰えると思うよ 日本語でvimならlingrかtwitterで(ry こんなところで質問して回答付かないから質問サイトに移動して同じ質問をするなら
最初から質問サイトで質問したほうがいいのに
2ちゃんの過疎スレで質問する奴ってよっぽど人が嫌いなんだろうなという印象 2chに残った燻し銀の兄貴が多少マニアックな質問にも答えてくれるという淡い期待 雲行き怪しい時期もあったがneovim順調に浸透してて笑う 順調と言えるのか甚だ疑問だ……
しかも軽量化以外取り柄が無いんじゃvi自体が時代に埋もれてる流れを止めることは出来んよ
ただi00001<Esc>qqyyp<C-a>q7890@qしたらその差は目に見えて歴然であった むしろEmacsの凋落ぶりのほうが際立ってるな…… >>319
>ただi00001<Esc>qqyyp<C-a>q7890@qしたらその差は目に見えて歴然であった
差はないね
条件合わせてやってなさそう…
nfオプションのデフォルト値が違うの分かってなさそう… >>323
分かってないです
てことは体感できる差もないってことか…… もしかして軽量化って >>305 のことか?
それ軽量化って言わないよ
逆に #ifdef を全部取っ払ったから重量化してるんじゃないの? vimで関数の引数を記述途中で改行した時に
括弧までインデントしてくれるプラギンないですか?
hogehoge(one, two, three, ←ここで改行するとカーソルが"("の一個右にインデント >>326
あったら素敵。
私は書き終えてから :%!astyle >>320
notepadなんか使ってる奴見たことないんだけどなんで1位なん 使ってるやつおおいからだろ
単純にWindowsのライトユーザの数が圧倒的なだけ 括弧の上で発動したら、その括弧と対応する括弧を消して元の場所に戻ってきてくれる術を下さい ビッグな人物は志もビッグ、古事記にもそう書いてある
わかるね? >>331
日本語でおkだが、おそらくsurround.vim入れて ds( >>331
%x<C-O>x
<C-O>はCtrl-o vimの開発陣的にはさっさとneovimへの移行進んでほしいの? Vim重くね?
スクリプトの仕様も糞だし
そろそろ一から作り直すべき vim使ってるときってメソッドの呼び出し元にジャンプするのってどうやってますか
メソッド名でgrepして結果から呼び出し元の箇所を探してジャンプしかないんですかね
android studioとかeclipseとか使ってると一発で呼び出し元階層表示とかできるんで便利なんですが
どうやってるんですかね ctagsは使ってますよctrl-]で関数定義部分には飛べますよね
そうじゃなくって逆にその関数を呼び出してる箇所の一覧表示を一階層だけじゃなくって
階層のトップまで全部表示してくれてジャンプしたいんですがgrepするしかないんですかね
cscopeというのは知りませんでしたぐぐります >>342
GNU global でいけるんじゃね?プラグインもあるはず 誰かこれをGitHubで活動してる人に投げてもらえんか
GVimでゴミ発生
ttp://www.dotup.org/uploda/www.dotup.org958160.png
Windows10、GVim 7.4.1944 kaoriya版
スクショではguifont=Hack:h10.5だけど他のフォントでも設定次第で再現してる >>347
モニタを固く絞った濡れ布巾で優しく拭けばいい。 >>347
Ctrl-Lでは不満ということですよね? なかなか指摘のゴミが見つけられず、自分のモニタが埃だらけだというコトに気が付く俺 日本語全角と1:2になってない欧米フォントならそんなもんだと思ってた kaoriyaには空白部分の描画を省略するパッチが入ってるそうなので
その影響かもしれないですね Matzとmattnが、どっちがどっちだったか、よくごっちゃになる 以下の現象について
誰か解説お願いします
環境は windows です
改行が CR のみで構成されたテキストファイルがあり
それをvimで開いたところ
改行のあるべき部分が "^M" となっており
テキスト全体が一行に繋がっていました
そこで
:s/\r/\n/g
を試しましたが
"^M" が "^@" となるだけで期待した結果は得られませんでした
いろいろ試した結果
:s/\r/\r/g
としたら期待通りの結果となりました
これはどういうことなのでしょうか >>357
そもそもの話になるけど、改行コードを強制指定して開き直せば良いんじゃないの?
現在開いているファイルの改行コードをCRとして開き直す
:e ++ff=mac
CR+LFだったら
:e ++ff=dos
LFだったら
:e ++ff=unix >>357
これでどうかな
:s/\r/^M/g
「^M」は、ctrl+v の次に続けて ctrl+m ありがとうございます
置き換えで LF = "^J" = \n が "^@"ヌル文字に化ける理由と
\r → \r の一見すると無意味な置き換えで改行になる理由が知りたかったのですが >>360
:%s/¥r/¥r/g についてはここに同じことが書いてあるね
http://vim.wikia.com/wiki/File_Format
To replace every CR with LF (when searching, ¥r matches CR, but when replacing, ¥r inserts LF; this is not a good idea if LF occurs at the end of a line, because an extra blank line will be created): 8.0リリース9/12日
話題にすらなってないのか ていっても利用者側からしたらあんま変わったとこないっしょ vimscript トランスレータってないんですか :set enc=macroman
ってすると確定で落ちるのは直ってる? 新規ファイルの最初の一文字目は
aかiのどちらで入れるのが正しいんだ?
バッファが空と言うけどlistで行末は表示されるし
空行みたいな扱いなって不可解
空行もそうだけどカーソル位置が変だし でもカーソル位置が$にあるからcでも違和感あるんだが
やはりiか?
つーか
逆に空行じゃないと
$にカーソル合わせられないことにこそ違和感を感じるんだがな
これのせいで最初すごくやりにくかった 初期状態の
バッファが空とされる状態は
実際には空行が一つあるってのがな
空バッファに対して
行単位でコピーしたものをペーストしたり
oやOすると空行が一つ出来てしまうのが困る
特に前者はどうやったらコピーしたものだけを配置できるんだ? 結局neovim、なんだなぁ。つれーわー、硬派な純正vim使いの俺つれーわーw >>374
ShougoがやってるSEOに毒されてる情弱さん >>376
ズバリかくなよ
暗黒くそ野郎降臨したらどうすんだよ
で暗黒野郎のseoとは? 拡張子.lnkのファイルを編集する方法を教えて下さい
そのファイルじゃなくてリンク先が開いてしまいます
リンク先を消せば編集できるようになりますが
リンクが生きてるとどうやっても開いたらいいか解りません gvim -b a.lnk
:new
:setl binary
:e a.lnk >>376
はえー、暗黒野郎のSEOとはまた、なんだべ? そんなSEO、出来るようになりてえな〜。 メモ
kaoriya版をポータブルに使っている人は、設定をvimrc_local.vimに書いていると思うが、
8.0では、defaults.vimが新設されたため、vimrc_local.vimより後にdefaults.vimが読み込まれ、上書きされてしまう。
これを回避するなら、個人homeに_vimrcを作成すればよい。 kaoriya版かどうかに関係なく_vimrc(.vimrc)に書くだろ
ポータブルに使いたければgvim.exeと同じところに入れておけばよい 変更点とか確認せず、Windows版gVim7.4を8に変えた。
バックアップファイルの名称が変わったんだな。
編集ファイル名の語尾にオーバーライン「~」付加
↓
編集ファイル名の先頭にピリオド「.」付加、語尾に「.un~」付加 >>384
変わったんじゃないよ
ヒント: undofileオプション >>383
その辺は、好みだろ。
kaoriya版の場合、vimrcがあって、これの設定を読み込ませたくない場合は、
_vimrcじゃなくて、vimrc_local.vimを置く必要がある。
もちろんvimrcそのもの書き換えてしまってもいいけど。 そもそも、kaoriya版は、$VIM/_vimrc、$VIM/.vimrcは、読み込まないようになってるな。
$HOMEの方は、個人設定として読むけど。 みんなiaoriyaつかってんの?
設定邪魔にならん? ファイル名に+が付いてると上手く読み込めない場合がある
"++hoge.txt" みたいなファイル
アイコンやウィンドウにドロップすれば問題なく開けるが
:e からのファイル名補完で出てきた名前で読もうしても新規ファイルになる
しかも何故か保存ができない >>391
:e .\++hoge.txt で読み込める。
言うように:e のファイル補完では \++hoge.txt になって読み込めないね。echo fnameescape("++hoge.txt")の結果も \++hoge.txt だし。直してもらった方がいいのかな :!外部コマンドのパラメーターで
#などを展開抑制するオプションってあります?
\でエスケープするよう置換するのはさけたい UTF-8のBOMを勝手に消してしまうのってひどくない?
要らないものだからっていっても
データとして存在してたものを無断で削るのはどうなんよ
読みこんだ時に消えてるから
もともとあったのかなかったのかも判らない
せめてeolみたいにあったかなかったかくらい表示しろよ 読みこんだものをそのまま上書き保存した場合にってことね
そりゃさすがに閲覧だけで書き換えられたらたまらんわ
もとファイルにBOMがあってもなくてもBOM無しで保存されてしまう 上書き保存してBOMが消えたことないよ
set nobomb したのなら別だけど メモ帳も同様だな
BOMが見えないから
もともと有ったか無かったかが判らないし
保存すると勝手に付けられてしまう
BOMも文字として表示しろよ
改行だって^Iだって表示させることできるだろ Vimはファイルを読み込んだ後に bombを弄らなければ書き込み時に勝手にBOMを取ったり付けたりしないよ
:h 'bomb の最後辺りに書いてある
もしかして fencsオプションに ucs-bom が入っていない? :e ++enc=utf16 hoge.txt
と同じことを
コマンドラインからの起動時に指定する方法はありませんか?
この++opt の enc は encではなく fenc のようなので
vim -c "fenc=utf16" hoge.txt
とするのが近そうですが
そのファイルだけの指定にしたい場合どうしたら良いですか 間違えた
vim -c "set fenc=utf16" hoge.txt
かな vim -c "e ++enc=utf16 hoge.txt" >>405
どうやるの?
>>406
それは確かにそうだけど
もっと単純なファイルエンコの指定の仕方はないの? >>390
はっきりいって邪魔だよ。
けど、パッチ含めて自分でコンパイルするのは面倒だし。
公式がもう少し頻繁に更新してくれたらいいんだけど。 ラッパスクリプト挟んでるわ俺、たまに素で起動すると新鮮
ていうか defaults.vim >>382 とか今気付いた(´・ω・`) 香りやしか使ったことないからどんな不便さがあるとかわからない vim "C:\tmp\^"
変態ファイル名が開けない ( :echo argv() すると C:\tmp^ になっている)
cd C:\tmp & vim "^"
こうすれば開けた UTF8にすると☆がうまく表示できないの
どうしたらいい? フォントの問題じゃなければ set ambwidth=double とか >>419
オプションでの解決法は無さそうだなあ >>418 system() にコマンド文字列を渡して E484 が発生する時(大抵複合コマンドを渡した時)は、
全体を括弧で括るとラララうまくいく事が多いラララ〜 ctrl+x decrement で
foo10 -> foo09
foo1000 -> foo 0999
になるよう、桁保持ゼロ埋めにするのってどうしたらいい? 空白入っちゃった
正しくは
foo10 -> foo09
foo1000 -> foo0999
です。
set nf=
しただけでは
foo10 -> foo9
foo1000 -> foo999
になっちゃう。 なんかバグっぽいの見つけたけど英語わかんないしどうしたらいいのか if って直後に数値置けるのがちょっと面白い
こういうのなくならないといいなあ 20h未満の文字が表示できないんだけど
表示させる方法ってないですか?
例えば1バイト文字のcp437だと本来は256文字分の全部の文字があって
普通のエディターでも0Ahと0Dh以外は表示できるんだけど
vimだと20h未満は^@,^A,^B...で表示されてしまう
これを抑制して文字を出す方法ってない? >>429
適当だけど encoding 変えたらいけたりしないかね? 置き換えの時に
元のままそのままを表す記号や表記はありませんか?
例えば
hogehogeg → hogehogegood
に置き換えるとして
:s/hogehogeg/hogehogegood/
ではなく
:s/hogehogeg/( )ood/
の括弧部分に書けるような表記があると良いのですが vim replace captchaでGoogl検索 >>431
&でマッチ全体を表せるので
s/foobar/&baz/ で foobarbaz になるよ >>431
君もそろそろ正規表現の勉強を始めるときがきたということだ >>436
vimの正規表現はややこしくありませんかね?
未だに戻り読み関係は理解できません ややこしい正規表現読んだり書くときはatom使ってるわ(´・ω・`) Windowsで慣れてたMeryに正規表現の処理は任せたいくらいだけど、そんなことしてたら手間かかるからやっぱりvimでがんばって調べてやる \cの有効範囲ってどうなってるの
先頭に付けても末尾に付けても結果が変わらないんだが vimの正規表現が気に入らなかったらeregex.vim アップデートしとけ
vim/neovim: Arbitrary command execution (CVE-2016-1248)
http://seclists.org/oss-sec/2016/q4/506 modelineとかもっと変態文字列で始まるようにすればいいのに 理法を解明かし至りて非合理な旧習から脱皮するに至りては――軈て変態を遂げた巳を知る。世の常に道と云うはこれなり。 科学の力で宗教のマズいところを勇気を持って否定するのが人の道です 深いフォルダのファイルが正常に開けない(多分フルパス255文字?)のですが、
回避方法ありますか?
Win7でKaoriya版を使っています。 "多分"という情報に価値はありません
・そのパスをここに貼り付ける
・どのようにそのファイルを開こうとしたのか第三者が再現できるようにここに書く 科学には反証可能性が必要です
つまり、これこれこういう証拠を集めたらその理論は否定されるという手続きが一つ以上存在せねばなりません >>452
「正常に開けない」ってのは開けないのか、開けるけども文字化けとかおかしな現象が起こるのかってのも説明が必要だな てかcygwinで実験したけでwin版は深いの開けんな。関数系 readfile() writefile() getf*() もダメだった
遊び半分でvim.h てきとーにいじってビルドしたけど俺スキルではあかんかったわw その深いフォルダをsubstか何かでルートにして浅くすれば行けるんじゃね vim-jpでmemberなのに仕事しない人多いよね
後、vim使ってなくてneovim使ってるのにmemberの人もいるね
整理したらいいのに なんかセッションファイルの保存が上手くいかなくなり、全て保存されず途中で終わってしまうため、それを読み込ませようとするとエラーになる謎現象が。
同様のケースの方はここにいらっしゃいませんか。 >>466
障害の現象は説明できますが、原因が不明なのです。ですので再現出来ていません。 >>468
function! RestoreSession()
if argc() == 0
execute 'source ~/.vim/Session.vim'
endif
endfunction autocmd VimEnter * call RestoreSession()
これを.vimrcに書いてvim起動です ひょっとして:mks!すればうまくいくって話なのか
俺達はエスパーじゃないからちゃんと説明して欲しい >>470
常に
mks!て終了させています。
恐らく、その際の保存時に、セッションファイルを完全に保存できていない様なのですが、何故そのような状態になるかが全く判らない状態です。 月並みだけどまっさら起動 gvi -N -u NONE とか一つ前の版の実行ファイルで試すとかしてみればどーかな セッションファイルの変更権限は勿論大丈夫なんだよね? 誰やっても再現する手順を見つけたらまた書き込みに来て >>471
こういう後出しだけはやめて
こんな感じでおかしくなる状況を確認できるまでの手順を示して一切の省略はしないで
vim -u NONE -N
:e hoge.txt
:tabe hogehoge.txt
:mks!
:q
vim -u NONE -N -S Session.vim >>420
それやったら全角になったら駄目な文字まで全角になってしまう 最近の版なら se ambiwidth=auto を設定出来る。試してみたら >>480 プログラマーに半角全角入り乱れた英数字を読ませ続けると吐血して憤死する >>482
半角2バイトのことだろうけど無視しておk ^Vu でunicode入力するときに
4桁越えるのはどう入力したらいいの?
U+2A708 とか入れられない
バージョン新しいのならできる? こう言って良いよな?言わせてくれ。「さすがvim」と。 oだとインデントが考慮されます。これを無視してとにかく左端に行って欲しい場合はどうしますか? >>489
se indentkeys-=o とか >>489
CTRL-Dか<の連打か押しっぱ、countは使わない
formatter用にdisableタグを追加 vimの話じゃないけどなんで *unix*-line-discard って言うんだろうね、Ctrl-U このライブラリどう使うんだっけな〜、前に一度使ったはずなんだよな〜、そのソースファイルはこのディレクトリにあることは明白なんだよな〜
って時に、Vim内でgrepして見つかり次第splitオープンしてもらうにはどうしますか? :vim /{pattern}/ {file name} | cw
↑の後quickfixの画面上で開きたいファイル名にカーソル合わせて<C-w>fとか? 世界のパワーバランスと自然界の生態系バランスが崩壊の兆しを見せている
もはやneovimの主要な弱みはことごとく潰されたのだ vim初心者なのですが、gvim,macvim(デフォルト),macvim-kaoriya,vim
みなさんは、どれを使っていますか?
端末はmacです。 >>503
guiがいいなら素のmacvimで特に問題ないよ MacVim-KaoriYaおすすめ
ヘルプも日本語版入ってるし ありがとうございます。macvim使わせて頂きます。また、vimは、terminalコマンドが、使えると聞いたのですが、どのプラグイン入れると、使えるのですか?
mv とか。touch とか。NERDTree入れれば
イケるのですが、、、 それにしても自動改行うざいな。
どういういきさつで糞機能をデフォルトにしようと決めたのだろうか? da)やdawしたとき、発動時点のカラム位置を可能な限り維持してもらうにはどうしますか? >>514
やる前の水平方向のカーソル位置が移動しないことです。
※削除で行末が元のカーソル位置より左にくる場合を除く >>515
理解できた
vim-operator-stay-cursorてのが見つかった いつの間にかコミットメッセージに変更内容書くようになってる
一体何があった 初心者だけど、windows7でc言語コンパイルするためにMinGWインストールしてパス通してmakefile作ってGvim上で:makeでコンパイルしてexe作れる所まではできたんだけど、これってエラーメッセージでないの?
)や;忘れようがprintfをprintと打ち間違えようが、ちゃんとコンパイルできて困る
コード補完なんか使ってないのに(vimrcはほぼ真っ白) >>518
自己解決
複雑なコードならちゃんとエラー吐いてくれた カラーをmolokaiに変えてはみたけど色がついたのは2、3色で後は白文字のまま
中身はJavaScriptのコードなんだけど、カラースキーマってこんなもん?
何かキャプチャと大分違うからがっかり neovimが気合いの入ったwindowsサポートをやってのけたことで、いよいよ短所はコミュニティにおける情報の少なさのみとなった kaoriya版を使わせて頂いています。
自動インデントが嫌で「$HOME/_vimrc」に下記を記述しても反映されません。
set noautoindent
set nosmartindent
set paste
起動する度に「:set paste」を打ち込んでいる状態です。
どうすれば反映されますか? >>526
普通 se paste はいらないけどな、、
verb se ai?
verb se si?
でどこで最後に設定されたか確認してみた? 複数のファイルパスを引数に指定して vim コマンドを実行しました。
複数のバッファが作られた状態で、バッファ1がビューポートに表示されています。
そして、バッファ1のコンテンツを適当に編集し、その結果をファイルに書き戻さないで、
ノーマルモードで :b2 コマンドを実行しようとしました。
すると、
E37: 最後の変更が保存されていません (! を追加で変更を破棄)
と表示され、バッファを移れません。
Vim は編集したコンテンツをファイルに書き戻さない限り、
別のバッファを同じビューポートに表示させることはできないのでしょうか。
環境 : ArchLinuxのターミナル上での最新Vim >>531
できました。
ありがとうございました。 特定のハイライト設定を分岐条件として、vimrcの処理を変えたい。
if文で実現できるでしょうか。
具体的には、hi Cursor gui の値がリバースかノーマルか判断して、IMEハイライト設定を変えたい。 IMEハイライト?
highlight CursorIM
であかんの? CursorIM で設定できるのは調べてわかっています。
カラースキーム側で、hi cursor guiにリバースを設定しているかいないかでcursorIMの設定を変えたいのです。 hi Cursorの設定はredir使って取るしかないんじゃないかね カラースキームを変更すると
autocmd ColorScheme
が発生するので
:let i=synIDattr(synIDtrans(hlID("Cursor")), "reverse")
で取得できないかしら?
synIDattr()
hlID()
みてみ もうずっと書いてないから自信ないんだがこんな感じか
augroup ColorSchemePatch
autocmd ColorScheme * call s:MyColorScheme()
augroup END
function! s:MyColorScheme()
if(synIDattr(synIDtrans(hlID("Cursor")), "reverse"))
hl aaaaaaaaa
else
hl bbbbbbbbb
endif
endfunction >>538
>>539
>>540
ありがとうございます。
時間作って、検証してみます。 >>540
バッチリ動きました!
どうもありがとう! 名著『実践Vim』(原題"Practical Vim")のDrew Neilさんも、いまやneovimに傾倒して、
1月に出る新著"Modern Vim"ではneovimのことに紙幅の1/3を割くらしい。 ネオVimがオリジナルに較べて優れているところは? vimの質問です。
カーソルがある行の末尾n文字分(改行コードは含まず)を削除したい場合、
どのようにするのが効率的でしょうか。
(:global コマンドのコマンド節で使いたい)
Pro Vim という本にはノーマルモードのコマンドとして、末尾3文字の削除にに
$3X
が紹介されていましたが、これは違いますよね。
これでは末尾から数えて4文字目から2文字目が削除されてしまいます。
(もしかしたら、書籍では設定ファイルで何か加工してあるのかもしれませんが、
私は勉強中に意味も分からず設定するのは性に合わないのでデフォルトのままです)
バージョン : Vi IMproved 8.0 (適用済みパッチ 1-628) >>548
もしかして、直感的ではありませんが、末尾3文字を消す場合、
$2Xx
のように、カーソル前の2文字を消す処理と、
カーソル直下の1文字を消す処理の2つに分けるのが最も効率的ですか? 例えば末尾3文字なら $v2hd とかどうだろう? >>550
>>551
私のやり方もそうですが、少ない手数でシンプルに済まそうとしたら、
3文字消すのに3ではなく「2」という概念がどうしても必要なんですね。
$2Xx
$hhD
$v2hd
そのあたりがやや直感に反するのですが、致し方ないことかもしれません。
アドバイス、ありがとうございました。 どうしようも無いことだけど、ウィンドウ関係のverticalの概念になかなか慣れない。
:vert split とか :vertical resize +5 とか。
これ、ウィンドウが並ぶ方向じゃなくて、境界線の方向なんだよね。 tmuxとvimではスプリットの方向が違うのよね
vimに慣れてると、tmuxのスプリットの方が気持ち悪く感じる(´・ω・`) DirectWrite有効時に描画が重いのって画面更新しきらない内に垂直同期待ちしてるからなんじゃね?
無効時の軽さはフレームスキップしてる分のように見える 俺達は日常的に1/60秒を超える操作を繰り返していた…のか…? 瞬速打鍵《ヴァーティカル・シンク・スプリント》の使い手であったか NodeJSを主に書いているんですが他のファイルを呼び出すパスを書く時に、相対パスを予測変換で表示してくれるプラグインないですか。 >>566
予測変換が必要ならIMEの入力履歴を使うしかないかな
予測変換じゃないけど/hage/を打つと/hage以下のファイル名が候補で出てくる
neocompleteとか terminalが使えるVimってどこでダウンロードできますか 現時点ではコンパイル時に有効にしないとターミナルは使えない
使いたいなら自分でビルドするしかない ビジュアルモードでのキーストローク a( による括弧の選択について質問です。
ビジュアルモード時、下記の3行のテキストのそれぞれ行頭にカーソルがある状態で
a( をストロークすると、3行目で行った場合のみ結果が他の場合と違います。
(())
(a())
(\())
1行目と2行目では、どちらも外側の括弧とその内部を選択します。
しかし3行目では、最初の開き括弧から1つ目の閉じ括弧までが選択されます。
バックスラッシュが影響しているように思えるのですが、これは仕様でしょうか。
3行目でも他と同じように外側の括弧を選択するにはどうすれば良いでしょうか。
ちなみに、3行目の行頭にカーソルがある時、その括弧に対応する閉じ括弧、
つまり2つ目の閉じ括弧が一時的にハイライトされます (もちろん1つ目の開き括弧も)。
これは望んだ通りの挙動です。
しかし、そこで % をストロークすると、1つ目の閉じ括弧にジャンプします。
これは a( の挙動と同様です。
またこれらの望まない挙動は丸括弧に限りません。
% でジャンプできるペア全てに当てはまります。 >ビジュアルモード時、下記の3行のテキストのそれぞれ行頭にカーソルがある状態で
ビジュアルモードで矩形選択してる状態?
aじゃなくてAを押さないと編集できないよ つうか仕様かどうかを2ちゃんで聞いてる時点で(ry
githubのメイン垢で聞くのが恥ずかしいなら捨て垢でも取得してgithub.com/vim-jp/issues/issuesで聞いてきなよ syntaxのほうは再現できないけど%の方は再現したから報告してきてね
ここで書き込んでも誰も作業しないよ >>575
言い方が悪かったです。
1行目の行頭にカーソルを移してビジュアルモードに入り a( をストロークします。
次に、一旦ビジュアルモードを抜けてから今度は2行目の行頭にカーソルを移し、
もう一度ビジュアルモードに入って a( をストロークします。
3行目でも2行目と同様の事を行います。
この時、3行目で行った結果が1行目や2行目で行った結果と違う、という話です。 >1行目の行頭にカーソルを移してビジュアルモードに入り a( をストロークします。
↑の時点でインサートモードにいるのに
↓ではビジュアルモードに入ってたことになる
>次に、一旦ビジュアルモードを抜けてから今度は2行目の行頭にカーソルを移し、
丁寧に説明してください
と言うかここで説明しても僕は作業はしませんよ バグの可能性があるならちゃんとvim-jpで報告してください
英語が出来るならvim_useで質問してもいいでしょう ああごめんごめんインサートモードは関係なかったわ
酔ってて眠いし頭が回らないわ カーソル位置はそのままで、指定した行番号の行を削除したいです。
たとえば、5行目にいながら20行目を削除する、などです。
:20d は使えません。
なぜなら、削除と同時にカーソルが移動してしまうからです。
(当然、カーソルより前の行を消した結果カーソル位置が1行上に移動するのはOKです)
プラグインを使わずに、デフォルトの機能だけで可能でしょうか。 >>584
駄目ではありません。
そのような機能があることを知りませんでした。
解決しました。
ありがとうございました。 sudoで起動したときに設定を反映させる方法を教えてください。 >>587
いくつかある
sudo vimでググれ >>587
自ユーザで使ってる .vimrc などを /root にもコピーすれば? 書籍 Pro Vim に次のようなコマンドが紹介されていました。
(正確には違いますが、質問の本質に無関係な部分は省略、改変しています)
:let c=0 | g/^/let c=c+1 | s/^/\=c/
各行の頭に1から順に番号を挿入するものです。
これは3つの同格なコマンド let、g、s がパイプで繋がっているのではなく、
1つ目のパイプで let と g が繋がっており、2つ目のパイプで繋がった let と s が、
g が実行する一塊のコマンドを構成している、 という認識でよろしいでしょうか。 …じゃなかった、二つ目の|は :g のコマンド部に含まれることになる(ので、一行ごとに let c=c+1 | s/^/\=c が実行される)
だから多分おっしゃってる通りです
言いたかったのは、シェルでいうパイプみたいな入出力機能は無いよってこと >>592
何となくの理解でしたが、おかげさまで確信が持てました。
ありがとうございました。 3ボタン式フットペダル買おうと思う
左はESCとして、真ん中と右に何を割り当てようか? そもそもそういうのが必要ないのがvimのいいところじゃね >>595
真ん中にクラッチ!?
なにいうてはりますの kaoriya の gvim と cygwin の vim を併用しています
kaoriya の gvim において、コマンドラインモードの部分のテキストを
クリップボードにコピーしたいです。何か方法はあるでしょうか?
ちなみに cygwin の vim では、ターミナルの機能だと思うのですが
マウス選択すればクリップボードにコピーされます
また、右クリックでメニューも出ます
ユースケースとしては、ファイルのフルパスを 1 と Ctrl + G で
コマンドライン部分に表示させた後、その文字列をコピペする操作です >602
回答ありがとうございます
どちらも有益な情報でした
nnoremap ,cp :let @*=expand("%:p")<CR>
こんな感じでマップすると、良い感じで使いまわせそうです
あと、2つ目の方は先頭に改行 ^J が入ってしまうようですね
助かりました 指定した範囲内の特定の文字列を置換したい。
ただし、置換先の文字列は1から順に増加する数字を含むとする。
例えば下記のものを
abcdef
xyzcwv
ocpqr
hijkclcno
xxcx
2行目から4行目までの c を上から順に、また左から順に [1] [2] [3] [4] に置換すると、
abcdef
xyz[1]wv
o[2]pqr
hijk[3]l[4]no
xxcx
となる。
どうすれば良い? >>604
コマンド一発でやる方法は思いつかなかったわ
関数作るならもちろんできる
function! AAA() range
let i = a:firstline
let n = 1
for l in getline(i, a:lastline)
let line = l
while match(line, 'c') + 1
if match(line, 'c')
let line = substitute(line, 'c', printf('[%d]', n), '')
let n += 1
endif
endwhile
cal setline(i, line)
let i += 1
endfor
endfunction :let i=1 | 2,4g/./s/c/\=("[".i."]")/g | let i+=1
上のだと4行目のcは同じ数字にしか置換されない
↓これで
let g:c=0
function! Inc()
let g:c+=1
return g:c
endfunction
:let g:c=0 | 2,4g/^/s/c/\=("[".Inc()."]")/g
:global コマンドを使い慣れてないので2,4g/^/s/cのとこはキレイでないかもしれない >>606
>>607
今まで関数は必要なかったんで避けてきたんたが、とうとう使うときが来たか。
使い方の基礎から勉強してみるよ。
ありがと。 関数を作ると別ファイルに分けたくなる→プラグイン開発の道へ 連続した2行の中のそれぞれのある列からある列までの文字列を上下入れ替えたいんだけど、
素早くやる方法ってある?
たとえば、こんなの (便宜的に半角空白2文字を倍角空白1文字に置き換えた)
bindsym up command1
bindsym down command2
こんな2行の文字列内の「up 」と「down」を入れ替えたい。
もちろん up の後ろの2つの空白文字も含めて。
こんな感じに。
bindsym down command1
bindsym up command2
プログラミングとかコンフィグファイルとか書いてると時々あって、
今まで普通に消してから書き直すか、片方を一度別の文字列に置換する方法でスワップしてたんだけど、
これが結構疲れるんだ。
長い文字列だと、作業中に何をやろうとしていたのか、どこまでやってたのか忘れることもあるし。
なんか良い方法ない?
キーストロークでやる方法、コマンドを駆使する方法、何でもいいんだけど。 >>610
自分は true/false を入れ替えるのにこれ使ってるわ
sagarrakshe/toggle-bool
自分はこれで足りてるけど、こっちのが高機能で色々カスタマイズできるみたい
AndrewRadev/switch.vim >>611
ごめん、例が誤解させちゃったみたい。
up と down だったのは特に考えなしに挙げた例で、
実際は何か意味的に対になる単語という訳じゃないんだ。
だから、予め辞書みたいに登録しておけない。
純粋に、2つの行の、同じ列から同じ列までの範囲の文字列を入れ換えたい。
矩形選択した範囲内の一番上の行と一番下の行をスワップする。
これができれば理想的なんだけど。 >>612
俺の知識の範囲ではコマンド一発じゃ無理だけど関数作ればできるよ
置き換える範囲は正規表現でも列でもできるし >>613
やっぱ既存のコマンドを繋げるだけじゃ無理か。
関数作ってみるよ。
ありがと。 >>610
洗練されてないコードだがこんなんとか
function! Sw()
let pat = '\s\+\S\+\s\+'
let l = getline('.')
let m = matchstr(l, pat)
let l2 = getline(line('.') + 1)
let m2 = matchstr(l2, pat)
cal setline(line('.'), substitute(l, pat, m2, ''))
cal setline(line('.') + 1, substitute(l2, pat, m, ''))
endfunction >>610
矩形選択した2行の同列の文字列同士を交換するならこんなんでどうか
function! s:SwapLine()
let pos1=getpos("'<")
let pos2=getpos("'>")
let l1=pos1[1]
let c_start=pos1[2]
let l2=pos2[1]
let c_end=pos2[2]
let len=c_end - c_start + 1
let text1=strpart(getline(l1),c_start-1,len)
let text2=strpart(getline(l2),c_start-1,len)
let line1=getline(l1)
let line2=getline(l2)
let newline1=strpart(line1,0,c_start-1).text2.strpart(line1,c_end)
let newline2=strpart(line2,0,c_start-1).text1.strpart(line2,c_end)
call setline(l1,newline1)
call setline(l2,newline2)
endfunction
vmap <C-S> :<C-U>call s:SwapLine()<CR> >>616
vmap <C-S> :<C-U>call s:SwapLine()<CR>
↓
vmap <C-S> :<C-U>call <SID>SwapLine()<CR> ファイルの最後尾を見たくてvim(gvim)をリードモードで開きたいです。
開いたあとにshift+gや、.vimrcの設定ではなく、起動時のオプションで、リードモード、最後尾を表示、で開くにはどうしたら良いでしょうか?
ソフトの実行ログで、最後尾周辺に見たい情報があります。 >>618
view + <ファイル名>
view にパスが通ってなかったら vim -R ノーマルモードで、
viWU
の後に、カーソルを最初に v を入力する時にいた位置に戻したいのたが、
関数やプラグインを使わずキーストロークのみで実現するには
マーク機能を使うしかないかな?
<c-o> を入力したら変なところ飛んじゃった。
viWU はジャンプリストには登録されないみたい。 >>620
語頭じゃないところで単語を大文字変換して、カーソル位置が動くからそれを元に戻したい、で良いですかね。
maviWUとやって'aしてみましたが駄目でしたよ。 >620
viWU``
こういうことをしたい感じ?
マーク機能を使っているけど自動でマークされた場所に戻るだけだからセーフということで 二人ともありがと。
>>621
> 語頭じゃないところで単語を大文字変換して、カーソル位置が動くからそれを元に戻したい、で良いですかね。
そう。
何でだろうな、俺の環境だと >>621 は意図通り成功して、
むしろ >>622 が機能しないんだが。
ただし、>>261 はシングルクォートを使ってるから
バッククォートに変えたけどね。
できればマークを上書きしたくなかったんだが、
それしかキーストロークで実現できなきゃ潔く諦めるよ。 あっ、再試験してみたらやっぱり手動でマークしないとダメだった……。なんだろ、無意識にm`しちゃってたのか?
改めて、 m`viWU`` ならたぶん意図通りになるんじゃないかなと。m`はジャンプリストを更新しているので最後の``はC-oでもいけるよ
:h jumplistにも載ってるからたぶん由緒正しい方法 >>624
意図通りになった。
が、ヘルプを読んでも previous context mark の意味がよく分からん。
普通のマーク (m[a-z] m[A-Z]) とは違うの? 日本語ヘルプだと「直前位置マーク」ってなっていて、これはとてもいい名付け方だと思う
/とかggとかGとかでカーソルがどこかへジャンプする時にジャンプ前の位置が自動でマークされる
m`は手動でそのマークを更新しているわけね
maとかして`aと違うのはカーソルジャンプが発生すると自動で上書きされるマークだから、一時的に使うだけなら後腐れがないというのが1点
それとC-oで戻れないって>620にあったので戻れるようにできないか調べた結果というのがもう1点 >>626
なるほど、そういう機能なのか。
(日本語もちゃんと意味を理解して訳してるんだね)
理解できたよ。
ありがと。 >>601
ノーマルモードで2つのキーq: 連続押しするとexコマンド履歴が表示されるので
それ選択してクリップボードへ。
また :dis ってexモードで入力すると "で始まる各レジスタが表示される。
もしかしたら編集中のファイル名などコピペしたいのがあるかもしれない。 cygwin の vim と kaoriya の gvim を併用しています
nerdtree において、259 文字以上のパスの場合、
cygwin の vim はそのファイルが表示されます
kaoriya の gvim はそのファイルが表示されません
後者の nerdtree において max_path を超えるパスを扱える方法はあるでしょうか
プラグインと設定ファイルはどちらも同じものを読み込んでます
kaoriya 付属の設定が原因かもですが、特定方法が分かりません netrw も同じ症状でした
kaoriya は内部でwin32 api の制限を受けてるってことなんでしょうかね >>630
Kaoriya版はVisualC++でコンパイルしたネイティブのWindowsアプリなので
Windowsの制限をモロに受けると思う cygwin もネイティブのWindowsアプリなのでWindowsの制限を受けるのは同じ >>632
うーんじゃあファイル名の長さ制限は別の要因によるのかなあ
まあ自分もかつて両方使って環境変数の競合によるトラブルに悩まされた経験があるので
そもそもCygwinのVimとKaoriyaのVimは併用すべきでないと思う Win32 APIは特別な対策をしなければMAX_PATH文字までしか使えない。
Cygwinはその特別な対策をしているが、Win32版は何もしていない。 linuxなら使わんけど
windowsなら普通に使う Gvimがダメなんじゃなくて
Gvimがダメとか言ってる人たちがダメなんでしょ
弘法筆を選ばず
Windowsのメモ帳だってコードは書ける 挿入モードでカーソルを行末に持って行くのに、C-o $でやっているのですが他に方法って有りましたっけ。 >>643
それって入力中の文字列の最後に行くだけじゃないっけ 様々なご意見ありがとうございます。
MacbookなのでEndがないのと、ホームポジションからなるべくキーを離したくないのです。
今まではESC AまたはC-[ Aだったのですが、最近ようやくC-o $を知りました。
どのみち2ストロークだよなあ、と思って質問してみました。
vimrc弄ってマッピングするのは盲点でした。検討してみます。 >>645
嘘でした。ちゃんと行末に飛びます
ごめんなさい >>649
ホームポジションから離れるので遠慮しておきます。ありがとうございます。 >>652
バランスチェアで仕事しているため、足が床に着かないのでそれは無理です。 vim を使用しているとき矢印キーを不能にしたくて、
試しに :noremap! <Up> <Nop> としましたが、
インサートモードでおかしな挙動をします。
1つ上の行に1文字 A が挿入されます。
不可解です、これはどう言うことでしょうか?
コマンドラインモードでは問題なく意図通りになっています。
ちなみに、:noremap! <Del> <Nop> もインサートモードでの挙動が変です。
こちらはカーソルのすぐ左の1文字の大小が入れ替わり、
かつノーマルモードへ戻ってしまいます。
:noremap! <BS> <Nop> はインサートモードでも意図通りになりました。 >>654
ごめんなさい。
あせって質問する前に落ち着いてしっかりリサーチすべきでした。
互換モードが絡んでいたのですね。
解決しました。 >>655
ごめんなさい、嘘をついていました。
まだ解決されていません。
矢印キーや Delete キーなどの挙動の仕組みは理解できました(つもり)。
そこで、set nocompatible を .vimrc に既述しましたが、症状は変わりません。
そもそも .vimrc が存在する時点で、デフォルトで nocompatible on のはずです。
仮想端末の方が悪いのかと、数種類試してみましたが、どの場合も同じ症状です。
vim のコンパイルオプションが関係しているのかと、vim --version で確認しましたが、
vi互換性やキーコードに関係していそうなオプションは見あたりませんでした。
もともと、矢印キーなどへ伸びる手を矯正しようと Nop に設定したので、
意図しない挙動であっても実質的には問題ないのですが、
やはり理由、原因は気になります。
vi互換性を切っても出るこの症状は何が原因なのでしょうか。 話がそれますが
Git for Windows も 260 を超えるパスは扱えませんでした
cygwin の git は扱えました 新しいNightly入れたがDirectWrite爆速やん
Windows10になって以来GDIではフレーム落ちが鬱陶しかったが
DWではそれが無い分、快適に感じるわ 2つのウィンドウへ開いていて、どちらにも行番号が表示されている状態です。
このとき、片方のウィンドウで :setlocal nonumber とすると、
そのウィンドウの行番号だけが非表示になります。
しかし、:setlocal ninumber ではなく :set nonumber としても
そのウィンドウの行番号だけが非表示になります。
number だけでなく、他のものでも同様です。
例えば wrap でも :set と :setlocal が同じ結果になります。
:set と :setlocal の違いは何でしょうか? その後 :new すると、、
:h local-options Laguage server protocol との連携は進んでいますか? >>660
ありがとうございます。
要するに、:set がすぐさま反映させるのはカレントに対してだけなのですね。
だからぱっと見では :setlocal との違いが分からなかった。
しかし両者の違いは新しくウィンドウやバッファを作った時に現れる。
なぜなら、それらは先ずはグローバルオプションで初期化されるから。
おかげさまで理解できました。 windows10でgvimにdein.vimを導入してプラグインの管理をしようと考えています。
readmeと個人ブログの記事を参考にgithubのリポジトリからcloneし、_gvimrcにもあれこれ書きました。
call dein#install() を実行し、インストールが完了しました。
この時点で各プラグインの機能が使用できるようになりました。
しかし一度gvimを再起動するとそれらが使えなくなっていました。
あれこれ試した結果、call dein#update()を実行すれば使用できるようになることがわかりました。
試しにgvimrcにcall dein#update()を記述し、起動時にアップデートをかけるようにしてみましたが、思った通りにはなりませんでした。
起動直後からプラグインを使用できる状態にすることはできないものでしょうか?
できるなら、どうしたら良いでしょうか >>664
どうやって自己解決したのか書いておくと、良い技術者になれるよ >>665
なんでここにわざわざ書くと良い技術者になれるのでしょうか? Laguage server protocol との連携は進んでいないのですか? 「:view ファイルパス」とすればリードオンリーモードでそのファイルを開きますが、
バッファの内容を編集することはできます。
これをバッファの内容すら編集できなくする方法はありますか?
つまり閲覧やヤンクへのコピーなど、非破壊の操作しかできないようにしたいです。 >>671
-M のヘルプを見ることで、modifireble オプションを off にすれば良いことが分かりました。
試したら、意図通りの状態になりました。
ありがとうございました。 :behave mswin
とすると結構普通のエディタのように使えるね
Windows10 vim 8.0 gVimで試した限りだが、
ノーマルモード、インサートモード問わず、Shift+矢印キーで文字列選択や
Ctrl+Ins、Shift+Insでコビー貼り付けができる
ただし、Ctrl+C、Shift+Vはできなかった
貼り付けもインサートモードで何も選択していない状態だと問題ないが
何か選択した状態だと思わぬ所に貼り付けされてしまう
ノーマルモードだと何も選択していなくても同様の事象
でも使えそうだ >>673
VimがVimのキーアサインでない時点で使えないと思うのだが >>673
Creamは?Vim使う意味なくなるけどね。 source $VIMRUNTIME/mswin.vim
も入れたら、Ctrl+C, Ctrl+Vも使えたよ。貼り付けも問題なかった
これなら使いやすいし、ノーマルモードもあるからVimらしさもあるね
gVim Easyはインサートモードしかないようだが
Creamはノーマルモードも使えるみたいだね
でもノーマルだと選択の開始はShit+矢印キーではなくなるのかな
ちょっと試してみよう gx でURL を開くとき、?以降のパラメータが含まれないようです
?以降のパラメータを含めるような設定はありますか? netrwの話?
:set isfname+=63 "( '?' の10進表記 = 63)
でもグローバルなんだなこのオプション
viWgx とでもして開くほうがいいかもしらん vim 標準搭載のパッケージ管理について質問です。
.vim/pack 下にプラグインを置くことでそのプラグインを使えるようになりますが、
そのプラグインのドキュメントが読み込まれません。
たとえば、vim-surround というプラグインを .vim/pack/pack1/start/vim-surround に置くと、
vim を起動させるだけで surround プラグインが機能します。
しかし、:h surround コマンドを入力してもエラーになりヘルプが見れません。
.vim/pack/pack1/start/vim-surround/doc/surround.txt が存在するのにです。
pathogen を使っていた時は、.vim/bundle にプラグインを置けば、そのドキュメントも利用できたのですが。
標準搭載のパッケージ管理ではドキュメントまでは面倒を見てくれないのでしょうか。 :helptags /path/to/surround.txt やったらいけるとか? 久々にいいオプションを見つけた
set isfname-==
'=' をファイル名の一部として認識させない
これによって設定ファイルの中の
option=/path/to/file
のような局面で <C-x><C-f> 補完を使っていける >>680
:helptags .vim/pack/pack1/start/vim-surround
としてみましたが、ダメでした。
(surround.txt を引数に入れると、ディレクトリではないと怒られるので )
:set runtimeoath? とすると、そこには
.vim/pack/pack1/start/vim-surround
も含まれてるのですが... raspbianにインストールされている標準のvimを使うとC言語など拡張子に合わせてインデントや色分けするので便利でした。
Ubuntuでも同じようにしたいのですが、個別に機能をインスールのではなく補完機能を込み込みにしたvimのパッケージなどってあるんでしょうか?
あとRaspbianのvimはそれ用にカスタマイズされたものなんでしょうか? >>684
色んなプラグインとか設定とかが元々入ってる Vim のディストリはいくつかあるよ
spf13, Janus, SpaceVim あたりが有名どころだろうか
イチから自分で探すの面倒ならこういうのもアリなのかもしらん >>685
そうなんですね、疑問がスッキリしました。
オススメされたディストリを入れてみます。
ありがとう。 Cのシンタックスハイライトやインデントくらいなら公式のVimに付いてくるはず
UbuntuにデフォルトインストールされているVimはtiny版だと思うから、huge版をインストールし直してやればいい。正確なパッケージ名までは知らんが公式リポにあるはず Ubuntu使っているならvim-gtk3を入れとけばいいんじゃないかと思う gtk3(huge)を入れたんだけど自動インデントされません。
tiny消したりしても変化なし、ハイライトはされてます。 >>690
.vimrcにset cindentって書けば有効化できる
動作とか詳しくはググって >>691
cindentオプションはC言語のインデントプラグインで自動的に有効化(バッファローカル)されるので、普通は手動で :set することはない
>>690
vimrcを作成済みなら、その末尾に
filetype plugin indent on
の一行を追加して、いったんVimを終了してからC言語ファイルの編集を始めてみて >>692
Cでインデント効きました。
嬉しい!ありがとうございます。 patch ファイルを開いている場合に、下記例でいうと src/foo.c にジャンプしたいです
単に gf とすると "a/" もパスの一部と解釈されてしまいジャンプできません
diff --git a/src/foo.c b/src/foo.c
今は泥臭いですが a にカーソルを持っていき xx <C-w> f で開いています
(単に xxgf だとバッファが保存されていなくて開けない)
isfname あたりで "a/" を無視するような設定や、
もう少し短いキーストロークで実現する方法はあるでしょうか vim右下の行列表示で 7,105-71となっているとき
右の71は半角1,全角2として
左の105は半角1、全角3として計算しているようです。
UTF8なら左、Shift_JISなら右の数字を見ると1行のデータ量が分かるいいということであってますか? 香り屋さんのを仕事で使ってるんだけど
ctrl-;はやっぱ割り当てられないよね
[キーが遠くて小指が痛いのんだけど、どのキーで妥協すべき? >>698
英語配列だとキーひとつ分左なんだよね、[って。 >>699
タブ入力する時に使うから割当て変えるの凄いと思った >>701
タブ入力はC-v,Tabかな。あんま使わないから
基本プログラミングとかしない。メモ帳と小遣い帳 linux で vim を使っています。
今、6行目の4列目にカーソルがあるとして、
2行目から4行目の範囲の文字列を外部コマンドに標準入力を通して送り、
コマンド処理において標準出力に出力された文字列をカーソルの位置に挿入したいです。
コマンドラインモードで
:2,4! コマンド
とすると、2行目から4行目が消され、2行目にコマンドが出力した文字列が挿入されます。
そうではなく、カーソルの位置に挿入したいのですが、可能でしょうか。 >695
遅レスですが、まんまやりたいことができました
ありがとうございました
ただ、当たり前ですが path から探すので
自分のフォルダ構成だと patch ファイルと同じディレクトリに遷移する必要がありました
そこで下記のマップをして改良してます
nnoremap ,gf :cd %:h<CR>:call gf#user#do("gf", "n")<CR> 一文字ずつ間にデリミタを入れるように置換したい。
[例]
1749064 --> 1,7,4,9,0,6,4
正規表現を使って一発で置換できるだろうか?
:s/\v(\d)(\d)/\1,\2/g
これを2回適用すればできたけど、なんか不様。 >>705
先読みで
:s/..\@=/&,/g
vimの先読みは \@= と書き、その直前の正規表現(この場合二つめの .)がその場所で一致するかどうかを見る
ちなみに & は一致した文字列全体 >>705
試してないけどこれでもいけるかも
s/\d\ze\d/&,/g vimの先読み後読みって覚えづらいのよね……
おれ先に(?=)とかで覚えちゃったから余計に >>706 >>707 でできました。
ありがとうございました。
先読みなどという仕組みがあるのですね。
興味深いので調べてみます。 ryanoasis/vim-deviconsを入れるとscrooloose/NERDTreeの表示がおかしくなります。
画像のfolderの中にfolder1〜5とfile1〜5が入っているんですが、ファイルだけがなぜか4マス分右にインデントされてしまいます。
vim-deviconsのオプションでフォルダにもアイコンを付ける設定をすると、フォルダも4マス分右にずれるので、ファイルと並びがそろうんですが、左のスペースが気になります。
左に詰めるにはどういう設定をしたらよいですか?
iTrem2でフォントはCicaフォントを使っています。
https://i.imgur.com/Ru8H3M7.jpg
https://i.imgur.com/GQUhbpO.jpg 自己レス
Xuyuanp/nerdtree-git-plugin
これの影響でした 正規表現にも方言があるから面倒だよな
grepのman見るまで基本や拡張があるなんて知らんかったし
vimの置換に手を焼いてたら原因がエスケープの有無とかほんと 指定した正規表現の量指定子やエスケープ、クラス、グループなんかをそれぞれ色分けして表示してくれるといいのにね。
そうすれば、エスケープし忘れている文字とかも一発で視認できる。 編集が済んでファイルを :bd で 閉じているのですが、
この時にtabは閉じないようにできないでしょうか?
tab 毎に カレントディレクトリを変えているのでやや困っています。 >>718
https://thinca.hatenablog.com/entry/20111204/1322932585
" タブページを常に表示
set showtabline=2
" gVimでもテキストベースのタブページを使う
set guioptions-=e
後:bdだと:ls!では表示されるから俺は:bw使ってる >>719,720
ありがとうございます。
720 の plugin が やりたいことっぽいので試してみます。 8.1のターミナルサポートってなんのこと?
:terminalとはまた違うターミナル? C-pでと入力補完ができるけどまさかC-x C-fでパス補完までできるとは
vimに標準でemacsじみた操作があるとか何この初見殺し Windows7でkaoriya版vimを使って言語の勉強をしています
普段は漢字入力をするとファイルの文字コードがcp932になっており
Windowsはそれで自然だと思うし不便なかったのですが
Go言語はutf-8のソースファイルでないとコンパイルが通らないため
「拡張子goのファイルを新規作成した時だけ自動でファイルエンコードが
utf-8になる」という設定をしたいです
どの設定ファイルをどういじれば実現できるでしょうか windowsはデフォルトだと %userprofile%\_vimfiles が設定ファイル
autocmd FileType go setlocal fileencoding=utf8 >>729
_vimrcファイルを作っていたのでそこにその通り追加したら_出来ました
ありがどうございます 「The VimL Primer」という本を読んでいるのですが、
その中に autoload/mpc/autoload/mpc.vim というディレクトリ構造が登場します。
autoload ディレクトリの下に更に autoload ディレクトリを置くのは無駄ですよね? vundle でプラグインをインストールすると、
.vim/bundle/<そのプラグイン名>/ftdetect
というように、ftdetect ディレクトリがこんな所に作られますが、
その中身を .vim/ftdetect ディレクトリにコピーしないと、これは機能しませんよね。
それとも、vundle の設定の一環として .vimrc に何か書く事で、
わざわざコピーしなくても機能させるようにするのが普通なのでしょうか。 Vundleが~/.vim/プラグイン名 をrtpに追加してくれるから普通はそのままで動くと思うけどなあ
他の設定とかプラグインでftdetectが上書きされてるとか? >>733
rtp変数にどのようなパスが設定されていようと、
.vim/ftdetect ディレクトリ内の *.vim ファイルしか読みとってくれないのですが、
これは異常なのですか?
そういうものだと思っていました。
.vimrc 設定ファイルを見直してみましたが、なにが悪さをしているのか見当がつきません。
プラグインも vundle を使って vim-mql5 と vim-surround の2つをインストールしているだけです。
ftdetect が上書き(?)されるような設定というのは、例えばどのようなものがあるでしょうか? >>734
例えばrtpに~/.vim/vundle/vim-mql5が入ってるなら、その下にある ftdetect/*.vim は読み込まれるはず。
:scriptnames しても vim-mql5 以下のファイルは出てこない?
ttps://github.com/rupurt/vim-mql5
をみると拡張子は .mqh か .mq5 の場合だけファイルタイプ設定するみたいだけど、そうなってるよね? 問題が解決しました。
アドバイスのおかげです。
filetype plugin indent on は vandle#end の後に書かないといけないのですね。
vubdle 導入時にどこかのブログから基本設定をコピペしてきて、
そこに後は入れたいプラグインをvundle#begin と vundle#end で挟んで書くだけとあったので、
そのままコピペした設定の後ろ (filetype plugin ... の後ろ) に追加していました。
vundle が何をやっているのかとか、filetype の仕組みとか、色々勉強になりました。 >>737
https://github.com/VundleVim/Vundle.vim
これのQuick Startの.vimrcのサンプルぐらいは読んでおくことをすすめる
Vundleで必要な設定がコメントされてる
それとVundleはもうメンテされてないから早いうちに別のプラグインに移行しておくと楽かも
https://github.com/junegunn/vim-plug
vim-plug はVundleと設定やコマンドが殆ど同じで、プラグインのアップデートを並列処理で行ってくれるために高速 >>738
ありがとうございます。
参考にさせていただきます。 filetype を学んだつもりでしたが、まだまだ未熟のようでした。
>>738 が薦めてくださった vim-plug を使ってみましたが、 また filetype 絡みで分からない事が出てきました。
~/.vim/plugged ディレクトリに vim-plug でインストールするプラグインを入れるとします。
それとは別に、~/.vim/foo ディレクトリに自作のテスト用プラグインを入れたいと思います。
そこで、~/.vim/foo/ftdetect/bar.vim に *.bar ファイルを開いた時に実行させたい処理を autocmd で書きました。
問題は .vimrc の書き方です。
set rtp+=~/.vim/foo
call plug#begin ('~/.vim/plugged')
...
call plug#end ()
というように、plug#end の前に rtp を追加しておくと、問題なく bar.vim が読み込まれます。
しかし、
call plug#begin ('~/.vim/plugged')
...
call plug#end ()
set rtp+=~/.vim/foo
というように、plug#end の後ろに置くと、bar.vim は読み込まれません。
同じ場所で rtp^=~/.vim/foo としてもだめだったので、rtp 内のパスの並び順の問題ではなさそうです。
なぜ後ろではだめなのでしょうか? 理屈が分かりません。 plug#end() の中で filetype plugin ... が実行されるから >>741
その理屈ですと、plug#end の後に、
set rtp+=~/.vim/foo
filetype on
とすれば、ちゃんと var.vim が読み込まれる筈ですが、ダメでした。
あと、今回の問題と関係あるか分かりませんが、
plug#end の後に filetype off としても、
vim を起動して :filetype とコマンドを入力すると、
filetype detection:ON plugin:ON indent:ON
とメッセージが出力されました。
もしかして、:filetype の設定は .vimrc の中では一度きりしかできないのでしょうか。 ソフトウェアデザイン7月号は Vim 特集だった
入門的な内容だったけど VimL で、日英混在の長さが不揃いの文字列の配列があり、
それを右詰めでバッファに表示させたいです。
let a = ['あiう', 'kakiくけ', 'さshisu']
という配列ならば、a[0] を左に3個半角スペースを接頭し、
a[1] をそのまま、a[2] を左に1個半角スペースを接頭して表示します。
配列内の最大の表示文字幅が分かれば、右詰め自体は printf 関数で簡単にできます。
問題は表示文字幅をどの様に取得するかです。
当然 len 関数は使えないのですが、どの様にすれば良いでしょうか? >>744
解決しました。
strdisplaywidth 関数という、やりたい事そのままの関数がありました。 :lcd で変更されるウインドウローカルな作業ディレクトリを getcwd()で取得した時の戻り値
(に含まれるディレクトリセパレータ)には&shellslash が反映されないのかなー 昔はvim vs emacsだったのに
今はvim vs その他モダンなエディタになってるな Emacsって今どうなってるん?
各個人が発展させてるだけ? Happy Hacking KeyboardスレだとまだEmacsは最前線ツールで、Vimやその他はライトユーザーのおもちゃ扱いされていて悲しかった 日本語の単語の区切り(wコマンドなどの)ってどのように決められているのですか? ひらがな
カタカナ
漢字
英数字とアンダーバー
記号
それぞれの塊ごとで区切られてるはず よくまあ日本語文字の種類に対応できるね
外国人エンジニアのITスキル半端ないわ
それとも日本語対応部分の処理は日本人が実装しているのかな って事は、「漢字仮名交じり文で書きました。」は「漢字仮名交」「じり」「文」「で」「書」「きました。」で区切られちゃう? >>754
やってみたら、そうなりました。
あと、調べたら jasegment.vim なんて作ってる人もいるのですね。 句読点やカギ括弧のような全角記号と、コンマや丸括弧のような半角記号は、
同じ種類とみなされるようだ
ちょっと不思議 >>755
それ凄そうね
けれど5年以上更新されてないのが気になる >>758
文字なり文節の区切り方がコロコロ変わるわけでもないかから更新する必要もないだろ >>760
俺はenterキーをescキーにマップしてる
改行は C-j 次にノーマルモードで何か打つときは、c-[
次に何も操作しないとき
(左手がホームポジション離れてもいいとき)は、ESC が多いかな こういうのにescキーを割り当てると捗りそうなんだが、linuxで使ってる奴いる?https://www.amazon.co.jp/dp/B004HAFZ1I C-[でescなんて初耳だわ
C-@に割り当ててた意味って >>764
> C-[でescなんて初耳だわ
それ別にviの独自のキーバインドじゃないからな viではなくてvimでできるようになった感じですか? >>766
terminalでは一般的なキーバインド >>764
USキーボードなら@の位置が[なんだけどね >>764
厳密には、C-[, C-c みたいなの esc じゃないらしい。 >>772
何を適当なこといってるんかな
端末上でEscとCtrl-[は同じ、EscとCtrl-Cは全然別物 こうやって下々の者達が互いに啀み合ってくれて本当に助かります Windows版gvimでdeoplete使うと自動補完が始まるまで時間がかかりすぎない?
auto_complete_delayの設定値+1秒強くらい
CPUが忙しいわけでもなく、ただ待ってるだけみたい vimでEnterキーをCtrlキーにマップする方法はありますか? evimなんて機能あったのね
gvimのキーバインドを普通のエディタにする奴
vimなのにC-Aで全選択できたりC-Sで保存できたり違和感しかない
コマンドモードのへの移行方法分からんけど
膨大な機能をメニューから探すなんてやってられないしな visual studioにvimのプラグインがあったから使ってみたんだけど、C-vしたらクリップボードがペーストされて、一瞬???なったの思い出した。
中途半端にマップしてあると面倒だよね。
これはちゃんと使えるんだろうか、とかコーディングとは関係ない疑心が湧いて、繰り返してるとそれで疲れてしまう。 前試したときそのままじゃ使い物にならなくて途中で面倒になって使わなくなった バッファの最初の行の前に :read で挿入したいです。
最初の行で <C-O> などで空白行を挿入して、
そこで :read して、空白行を削除するしかないですか? >>782
:h :read
> To insert text above the first
> line use the command ":0r {name}". >>783
見逃していました。
ありがとうございました。 ビックリマークってコマンドの前後で意味変わるのね
こんなのどこで覚えろってんだ :!sort と :sort! のことでも言ってるんかな。全然別物だから。
:! は外部コマンドの実行だから、:!sort は sort という外部コマンドを実行する。
:sort! は :sort というVimの組み込みコマンドにオプションの ! を付けたもの。
分からないことがあればとりあえずヘルプ読め。:help :!、:help :sort 暗黒美夢応のなんとかっていうプラグインを使って色んなプラグインを入れてるんだけど、暗黒美夢王のそのプラグインやその他のプラグインのアップデートってどうやるの?
もしかしてひとつづつ、gitからプルするの? dein.vimとそれで入れた他のプラグインの事っす プラグインに手を出し始めると末期
長い目で見れば、アプリは標準機能のみで使うのが最も幸せになれる プラグインしこたま突っ込んでも結局戻すまでがテンプレですし
デスクトップ弄って最終的に元に戻すのと同じで ファイルブラウザのサイドバーとアイコンのプラグイン付けたらめちゃめちゃ重くなった
見た目に愛着湧いたけど重くてマジで苦痛 プラグインいっぱい入れても結局使うのって限られてるよね。
せいぜい3〜4個 まあそうだよな
surround, ctrlp, matchit そんなもんかな 48個入ってるな
ほとんど使ってないのもあるけど
削れて半分、20個以上は必要な感じ ソフトウェアデザインの7月号はVim特集だったみたい
読んだ人いる? あの雑誌の編集は頭おかしい
ネタがなくなるとVim・Emacs特集組みやがる
しかも絶対主義とか言っちゃってて痛々しい >>796
インストール、文字入力、プラグインの入れ方、等の入門編だった
このスレの住人なら、実践Vim 方がためになると思う >>798
どうもありがとう
実践Vim気になってるんだけど、紙のはもう売ってないみたいね
オライリーのメガネ猿のは持ってるから、それ以降のバージョンの事と最新のプラグイン周りの事まとまったのが読みたい
技術書、入門書のスレってどこかにある? ノーマルモードの<S-Space>って移動?選択?それとも環境依存? ぶっちゃけvim関連の書籍って役に立つの?
今はマニュアルの日本語化が進んでるからそれで十分じゃない? これから使い始める人には必要でしょ
Vimのヘルプは充実しているけれど
初心者は適切なヘルプキーワードを知らないからな >>803
>初心者は適切なヘルプキーワードを知らないからな
紙の本でも同じ事が言えるのでは usr_XX.txt は上から下まで読んどく価値がある >>804
ヘルプは量が多すぎるから辞書代わりにキーワードを指定して調べ物するにはいいけど、最初から最後まで通して読むには向いてない
一方で紙の本は何も知らない初心者が要点をかいつまんで最初から通して読める分量になってるでしょ >>807
ヘルプファイルの usr_01.txt から usr_45.txt までのこと どんなに厚い本でも目次や索引があれば検索自体は容易なのでは?
Linuxからしてそうだがこの界隈は説明書読むのに説明書がいるんだから同じ尺度で考えちゃいかんよ
そして利用者はその煩雑な手間を学習に向くだの楽だのしか言わないから面白い そもそも用語とか概念とかを知らないと索引があっても検索のやりようがないから入門書は重要
例えばテキストオブジェクトという概念を知らなければいきなり登場したciwについて調べようがない >>810
例が悪くない?
help.jaxのど頭21行の知識
> 移動: カーソルを使用するか、"h" で左、"j" で下、"k" で上、"l" で右に移動できます。
> 項目へジャンプ: タグ (例: |bars|) にカーソルを合わせ、CTRL-] を押します。
> 元の場所に戻る: CTRL-T or CTRL-O を押す。繰り返すと更に戻れます。
> ノーマルモードコマンド :help x
だけで
:help c
{motion} の上で CTRL-]
motion.txt の上で CTRL-]
と簡単にたどり着けてしまう いくらヘルプを日本語化しようが:helpは日本語で検索できないからね仕方ねいね
・vimのヘルプを日本語化する
・man vimでヘルプの出し方を調べる
・どのヘルプファイルに調査対象の文字があるかをgrepで調べる
・$ vim +:"help"でヘルプを開く
・該当するヘルプファイルのタグでC-[
・/で目当ての文字を検索
man vimだってmanの存在知ってる前提だからな
英語だったら翻訳の手間いるし説明書読むのに説明書がいるってのはこういうことだ >>811
それは c と i と w がそれぞれ意味を持っていることを知ってるから :help c を実行しようと思うんだよね?
>>810の言うようにまだvimに馴染んでない初心者が :help ciw としたところで何も見つからない 同人誌で良いから詳細でとっても分かりやすい説明書出してよ
pdfじゃなくてちゃんと紙の書籍で 90年代のころと違ってもうEmacsよりVimの勝ちだと思ってたんだが、Emacsスレのほうが賑わってるんだな
ネットだとEmacsの書き込みはここ数年前世見なくなったのに。 >>812
日本語検索できるぞ。それと :helpgrep あるぞ
:helpg 表示
を入力して :copen してみ?
もちろん日本語helpは導入済みの前提 >>808
チュートリアル的なのってなかったっけ? EmacsはEmacsで面白いよね。ここ数年使ってないけど結構好き。 >>818
vimtutor だな
入門者はとりあえずやっとくべき >>813
まぁ、ヘルプ読んだり書籍買うよりも
いきなりciwを登場させた本人に聞くのが一番だね ノーマルモードの<S-Space>って移動?選択?それとも環境依存ですか?? 人いねぇ\(^o^)/
.viminfoに重複履歴があったけど重複保存の回避ってできないかな
bashのHISTCONTROLと似たことしたい
.viminfoでsort+uniqしちゃいかんしソートせずに重複を消すコマンドがあればいいんだけど ノーマルモードの<S-Space>って移動?選択?どちらですか? 選択した行について、Shellのsortを呼び出して、結果と今の選択行をそっくり入れ換えるにはどうしますか? >>825
S-Vで複数行選択して:!sort
実際のコマンド行の表示は:'<,'>!sort みたいになる shellのsortを呼び出したい案件なのかもしれませんがvimにsortありますよ
実行は!付けるか付けないかの違いでしかないですが 06'17 Mastering Bash
06'11 GNU Octave Beginner's Guide
10'15 LaTeX Cookbook
08'16 Unreal Engine: Game Development from A to Z
02'12 gnuplot Cookbook
09'12 Blender Game Engine: Beginner's Guide
08'14 Blender 3D Basics Beginner's Guide Second Edition
06'13 SDL Game Development
らの行を選択して、ソーティングしたいとします。但し左の数字列は 出版月'出版年 です
時系列で降順ソートにしたいです。同じ出版年月の本内の順序は問いません
Bashだと
sort --field-separator=\' -n -r --key=2,1
でできました
Vimだとどうやるのか、ちょっとうまくいきません >>828
同じじゃない?
1) カーソルが一番上にある状態で Shift-v でビジュアルモードに入り、G で最終行まで選択して反転させる
2) : (セミコロン) でコマンド入力 (実際には :’<,’> と表示される) モードになるので続けて !sort <オプション> を実行
実際には以下のようになる
:’<,’>!sort ―field-separator=¥’ -n -r ―key=2,1
それともOS (shell?) コマンドの !sort じゃなくてvim内蔵の sort でやりたいけどできないってこと? !は先頭か末尾かで意味変わるのかよ・・・
連番挿入ってひょっとしてvimで!seqした方が手っ取り早いのか? ぐへへ
let Sort_by={list,fn -> sort(list,{a,b -> fn(a) > fn(b) ? 1 : -1 })}
let Target={line->substitute(line,"^\\(\\d\\d\\)'\\(\\d\\d\\)",'\2\1',"i")}
call setline(1,Sort_by(getline(1,'$'),Target)) これでどうやろ
久しぶりに書いたんで自信ないけど
command! -nargs=* -range=% -bang Sortby call s:Sortby("<bang>",<line1>,<line2>,<f-args>)
function! s:Sortby(bang,line1,line2,pattern,replace)
let l:Target={string -> substitute(string,a:pattern,a:replace,"i")}
let l:Sort_by={list,fn -> sort(list,{a,b -> fn(a) > fn(b) ? 1 : -1 })}
call setline(a:line1,l:Sort_by(getline(a:line1,a:line2),l:Target))
endfunction
例
:Sortby ^\(\d\d\)'\(\d\d\) \2\1 あ bangで反対ソートにするつもりだったけどやり忘れた 100とかくらいまでなら、試してないけど
100i1<cr>ggVGg<c-a>
とかでいけるんじゃないかね 行の最初に挿入か置換するのどうするの?
0で行の最初にカーソル持ってきてPを押すと2文字目にペーストされてしまう >>836
挿入ならI置換なら^
左側にペーストってあったっけ?
挿入してレジスタペーストかな? >>837
>>838
どうもありがとうございます! コマンドラインモードで範囲内の文字列の切り取りとペーストを一度に行いたいです。
例えば
:3,7何とか
とすると、「3行目から7行目までが削除され、かつカーソル位置にペースト」
できれば嬉しいのですが、方法は有るでしょうか?
削除が必要なければ t を使えばいいのですが。
vim のデフォルトの機能でお願いします。 >>841
できました。
ありがとうございました。
>>842
まさに >>841 で実現できることです。
ところで、こういう t や m などの他に
コマンドラインモード内で使えるもので何があるか調べたいのですが、
ググり方あるいはヘルプの出し方が分かりません。
ググっても、便利な機能やテクニックとして一部は載っていますが、
一覧表は無いのでしょうか? >>843
:h :index
exコマンド数600個近くあるけどな! vimはシェルみたいに入力補完できるから:hの後にTab連打すれば一応コマンド一覧は出せる
:h hならh開始、、:h wqならwq関連、:h CTならCtrl関連と頭出しもできる
同じ操作系列の抽出?知らない子ですね・・・ >>844 >>845
ありがとうございます。
尋常じゃない多さですね。 vimのコマンドは大量だけどちょっと覚えればいいのがいい
込み入った作業だと結局ググらにゃならんが 検索とか置換とか基本機能のショートカットくらい表示しても罰は当たらないのでは?
nanoは色々残念だし エディタにあまり多くを求めない生き方もありだよ
本当はnanoで十分な人多いんじゃないの それでもvimを使いたいんだ!
だって便利だしかっこいいだろ?(感情論) >>848
vim-cheatsheet を使ってみるとか マクロやマークは何それ状態だな
レジスタ操作もクリップボードと共有してclipman使ってるしな
なまじ独自のクリップボードを持ってるからvim以外でコピペ出来ないとか初見殺しも大概にせえよ 4kディスプレイにしてwindows10でスケーリングしたら
日本語フォントが重なって表示されるようになってしまった
どこの設定変えたらいいのかわからない スケーリングを100に戻して4kを捨てて無意味さをレビューで広める
Windowsのスケーリングを100以上にして使うと色んなソフトでレイアウトが崩れる
UIは100で作ってる人が多いので考慮してないからだろう、Winのスケーリング自体がヘボなのもある いろいろやってたらいつの間にかちゃんと表示されるようになった
何が違うのかわからんけど面倒だからもういいや
vimに限らずwindowsのスケーリングほんとくそだわ 使い始めて3ヶ月くらいの初心者です。
ゆっくりではありますが、テキストオブジェクト?の扱いにもようやく慣れてきて、他のエディタで編集するよりはサクサクと動かせるようにはなってきた状態です。
今の所プラグインは一切手を出していない状態なのですが、「これはほぼ必須」というような定番のプラグインなどはあるのでしょうか。
言語などにもよるとは思うのですが、汎用的で、いろんな言語で扱えるような、便利な定番プラグイン等がありましたら、ぜひ教えていただきたいです。 >>858
やめとけ
今困っていることがあってそれが何のデメリットもなしに
解決できる夢のようなプラグインがあると知った時にのみ検討すべき
いじればいじるほど汎用性がなくなり動作が怪しくなり煩わしくなっていくのがエディタというもの >>858
vim-surround
括弧で囲むオペレータを追加する。これだけはなぜ本体に同等の機能がないのか不思議に思うレベル >>859
なるほどー。確かに今特別に困っていることは無いです。
最初の目標として、プラグイン無しの状態である程度使いこなせるようになったら、何か導入しようと考えていたのですが、
考え方としては間違っていなかったようで安心しました。ありがとうございます。
vimについて調べていると、入門向けの記事と銘打っていても、プラグインを入れているという記事が結構出てくるので、
最初から使ってしまうとvim本体の機能なのか、プラグインの機能なのか分からなくなるのではないかと、疑問に思っていました。
>>860
調べてみた感じだと、確かにこれはデフォルトであってもよさそうな便利な機能ですね。
言語等選ばず使えるプラグインだと思いますので導入させていただきます。
ひとまず>>860さんのプラグインのみ導入して、もう少し基礎的な部分も含めてしっかりと使いこなせるようになりたいと思います。
お二方ともありがとうございました。
また何かありましたら質問させてください。 >>861
プラグインを管理するプラグインは遅かれ早かれ通る道だから入れてもいいんじゃね
vim8標準の使ってもいいけど
自分はこれ使ってる
https://github.com/junegunn/vim-plug/ >>862
丁度surround-vimを手動で導入し終わってしまったところで、
URLのREADMEのgifを見て驚きました。大量に導入する人はこういうプラグインで導入や管理をする感じなんですね。
vim8自体にもこういう管理機能があるというのも初めて知りました。調べてみたいと思います。
勉強になりました。ありがとうございます。 https://qiita.com/nil2/items/ddcf23f1163d0abd805b
この界隈っていつも数だけは一丁前だよな
プラグイン管理の設定自体が煩雑化する徹底っぷり
neobundle.vim
vimdoc-ja
vim-auto-save
vim-sensible
vsession
さして使わんからこの程度
後ヘルプの引き方も覚えるのが吉
.vimrcにこれを追記すればKを押した位置の文字でキーワード検索できるから
set keywordprg=:help 正確には
autocmd FileType vim,help setl keywordprg=:help 自分もいろいろプラグイン入れてきたけど、結局使うことが無くなりほとんど消した。
いま残っているのは tlist と自作のプラグインが数種。 久しぶりにプラグインを入れようとすると、
自分がどのプラグイン管理を使ってたのか思い出せない 7.4から8.1にしたらちょっとフォントきれいになった気がする。
こんなことあるのか そのうちプラグイン管理プラグインを管理するプラグインが出てくるね >>869
既存のプラグイン管理プラグインでもプラグイン管理プラグインを管理できると思うが 既存のプラグイン管理プラグイン管理プラグインがおかしい時
プラグイン管理プラグイン管理プラグインを自力で修正して
プラグイン管理プラグインでアップデートすると
プラグイン管理プラグイン管理プラグインが元の木阿弥になってしまう
あんまり多段にしないほうがいい コールバック関数の括弧みたいにプラグイン管理するのやめてください 管理プラグイン1つ使って、細かいことしたくなったら自前の薄いラッパー書くのが楽 >>868
Windows版 gVim ならフォントレンダリング関連の改善入ってたと思うよ
フルカラー絵文字対応とかも
たしか日本の方々によるパッチだったはず snap flatpak appimage nix linuxbrew
考えたら汎用パッケージ管理からしてご覧の有り様だった
その内atoolみたいなの出そうだな Pluginフォルダにgit cloneしてきたのそのまま放り込めば動くんだから、重くて遅延ロードする必要性が無い人にはおすすめしない Align.vim プラグインについて質問です。
2つ以上の異なる文字を同じセパレータとみなして Align することはできますか?
たとえば、
foo [ bar
, baz ]
この2行の文字列に対して、文字 '[' と 文字 ',' を同じセパラレータとみなして Align を施し、
2行目の',' の前に4文字分の空白を挿入して、'[' と ',' の位置を揃えたいです。 Align.vimは分からんけどvim-aligntaなら
Align -R ,\|[ >>877
空白区切りで複数指定
:Align [ ,
正規表現として解釈されるので
:Align [[,]
とかでもok >>878
同カテゴリのプラグイン候補として検討してみます。
>>879
できました。
エスケープしなくても良いのですね。
ありがとうございました。 矩形選択でGで一番下かggで一番上の行まで選択するとき一番左にカーソル飛んでしまうですが何かいい方法ないですかね MSYSでは
finddir('Windows', '/c/Users;') " -> '/c/Windows'
finddir('Windows/..', '/c/Users;') " -> '/c'
win32では
finddir('Windows', 'C:\Users;') " -> 'C:\Windows'
finddir('Windows\..', 'C:\Users;') " -> 'C:\Users' なんで、'C:\'になるはずじゃないの?
win32のvimがおかしいのか自分の解釈が間違ってるのか
きっかけはvim-lspのroot_uriの設定でよくある'.git/..'を探すというもの 質問失礼します
置換ABCD....を一括でやるのって↓しかないですか?
[vim] vimで複数の置換コマンドを一括で行う - 綾小路龍之介の素人思考 http://za.toypark.in/html/2010/02-22.html
.shみたいに書いといて使いたいときに呼び出して実行って出来ないですか?
他のエディタ(Mery)使ってた頃の置換整形マクロ.jsを移植したいんだけどvimの作法が分からないのでどこにどうしたらいいのやら…… vimrcあたりに関数定義しといて呼び出せばいいのでは? $HOME/.vimrc に書けばどこでも呼び出せる
function! Substitute()
s/foo/bar/
endfunction
:call Substitute()
Vim script はクセあるけど色々できるよ
:h func とかで Vim のヘルプ引くか、GitHub とかで人の vimrc 見ると良い >>886
サンクスです!わかる範囲で取り敢えず試してみます
>>885
>>886のことですかね Vimのお作法がわからないのだからとりあえず「vim 作法」でググればvimrcでいろいろできることがわかる
置換というキーワードもわかっているので「vimrc 置換」でググればやり方もだいたいわかる
って感じでググれるといいね ヘルプと言っても所詮は知ってるコマンドしか引けないからな
逆引きがある訳じゃないしし
set keywordprg=:helpがあると多少楽になるよ
カーソル下の文字列で直接helpを開くKが有効になるから検索の手間が減る
ぶっちゃけvimtutorよりこっちを先に教えて欲しかったわ
拡張正規表現のnnoremap / /\vもあるといい
初期状態だとクリップボードも使えないし秘伝のタレ作りは丹精込めなきゃな 最近USキーボードに変えたんだけど微妙に使いにくい
まあ基本的には慣れの問題なんだけど:がなれる気がしない
:を入力するのにshiftを押さないといけないけど:の次に打つ文字が大文字になってしまう
:と;を入れ替えればいいんだけどあまり変えたくない ググったら外人も:と;入れ替える人いるっぽいからやっぱり入れ替えるかな
他にUSキーボード使う上でオススメあったら教えてください 俺は入れ換えてるわ
他にはもしノーマルモードの , 使わないならそれに割り当てるとか f/t の時って operator モードだっけ?
それなら、 onoremap してたら解決したりする? https://www.tapwithus.cpm
これで快適にvimれたら最高
片手専用っぽいけど、むしろ両手で使いたい 中距離の移動で5k5k5k,5j5j5jとやってみたけどめんどい
素のVimでのおすすめの方法おしえてくだしあ ctrl-d
それか } を ctrl-j とかに map してみる >>899
素だと {, } とか (, ) はよく使うけど文書の構造によるからなあ
あとは / で検索して移動とか H, M , Lでそれぞれ画面上、中、下移動
覚えてないけど列の中央にカーソル持ってくるのもあったよな Ctrl + h,j,k,lに5h,5j,5k,5l割り当ててる Ctrl+d, Ctrl+u で半画面スクロール。
自分はよく使う。 なんか最近、GUIだと自分が必要としてるのはVimよりもVimの操作インターフェイスな気がしてきた
GVimとVSCode使ってる 最近の vim のソースにうまく migemo パッチ充てられなくなったな
まだ kaoriya-patches 更新されないかな 行番号と、相対行数を同時に表示する方法はありますか。
set relativenumber で相対行数を表示させたとき、
カーソルのある行のみは0の代わりにその行番号が表示されますが、
全行に渡って両者が併記された状態にしたいという意味です。 >>912
>>913
やはり無理でしたか。
ありがとうございました。 設定項目がかつてのAUTOEXEC.BAT、CONFIG.SYSと同様、キーボードで設定の命令文を書き込まないと設定できない。
昔のコンピュータは、MS-DOSのようにキーボードで魔法の呪文のような命令文を打ち込まないと、
ファイルの構成を見たり、コピーしたりすることができなかった。
たった1文字間違えただけでも、「コマンドまたはファイル名が違います」というそっけないエラーメッセージが出るだけ。
確かに、訳のわからない文章を入力して、1文字でも間違えれば効果がない、設定できないと言うことはまさしく呪文でしょう。 MS-DOS、命令文入力で操作するシステムを使わなければならない人は、
一生懸命に命令文を覚えなければならない。
この命令文入力で操作するシステム、CUIをアイコンやマウスなどで視覚的に操作できるようにしたのが、
WindowsなどにおけるGUI、グラフィカルユーザーインターフェースである。 GUI の歴史のことを言っているんだとすれば
Smalltalk80 が初期のものだし
80年代中ごろのMac、Xwindowを忘れるわけにはいかない
Windowsが出てくるのはその後 普段はrelativenumber、コマンドモードはnorelativenumberにしたいんだけどいい方法ない? >>918
試してないのでわからんが CmdWinEnter と CmdWinLeave を使ってどうにかならんかな >>919
CmdWinEnterはq:のほうみたい。でもおかげでCmdLineEnterを見つけられた。ありがとう
しかし↓だとコマンド抜けてから描画されるようでコマンドモード中の再描画がわからない
autocmd group CmdLineEnter * setlocal norelativenumber できた!
autocmd group CmdLineEnter * call <SID>SetRelNum()
function s:SetRelNum()
setlocal norelativenumber
redraw
endfunction
autocmd vimrcAU CmdLineLeave * setlocal relativenumber >>920
LineEnter の方だったか、、、何はともあれ無事にできたようで 試しにneovim on windows terminalしてみたらvimより軽い気がしたけどneovim-qtは起動に十秒くらい待つ…
windows向けのgvim的なの色々あるみたいだけどいいのありますかね ようわからんてどういうことかね
やり方がわからんのかなんなのか neovim-qtを一番高い完成度で仕上げてるのってどの酉ですか? neovimのWindows向けnightlyビルドが暫く出てなかったけどようやくビルドできるようになったんだな 最近 NeoVim のGUI どう?1年前に oni やら幾つか試したときはなんかモッサリしててすぐ止めちまったわ unix板のvimスレから来ました。
Windows版のvimって、上書き保存したとき、
NTFSの拡張属性消しちゃいますか?
WSL1で、win側のファイルを wsl 側で chmod 644 しても、
Windows側のvimで上書きすると chmod が 777 に戻ってしまう。
backupcopy=yes にはなっています。inode番号は変わってない。
同じことをメモ帳でやるとちゃんと保持される。 回答じゃないけど
GitBash と cygwin 間でも似た現象が起きたことがある
片方で 0644 に変更したあと、もう片方で確認すると
0755 のまま変わってないとか。
実態は 0755 のまま変わってないのに、WSL側が 0644 だと嘘ついてるとか?
あと、Windows OS のユーザーやグループの読み取り・書き込み権限の機能も
関係してる気がする
WSL のユーザーが、Windows OS 上でのフォルダの読み書き権限が
どうなっているのか確認してみては? 追伸
上のレスは vim 全く関係なく、コンソールのユーザーの読み書き権限の話です やっぱファイルシステムをエミュレートしてるだけの仮想的なものなんかね? "=でex窓に入ってecho exコマンド打つとレジスタに入る事を知って最近捗ってる
nr2chr(コードポイント)でdigraphなんてよく分からんもの覚えなくても記号入力できるしstrftimeでタイムスタンプしたり超便利
(低レベルですまん) windows terminalからneovimを起動すると
下の画像のように背景すべてが選択されてしまって
とても見にくくなってしまうのですがこれの解決方法ありませんか?
https://dotup.org/uploda/dotup.org2480389.png >>942
自己解決しました
neosolarizedというカラースキームを導入することで解決できました これ日本語編集しなくてよいなら最高のエディタだね
本当に素晴らしい >>945
自己解決 viminfoのパーミッション 確か10000しか保存できなかったよね
割と頑張ったワンライナーが:w filenameとかで流れるの悲しい、保存しとこ
nvim使って久々にvim(master)から起動したらshadaの指定が範囲超えてるとか言われた記憶、nvimの方はちょっと上限解放してるっぽいね
--startup-timeで起動時間見ても特にインパクト無いようだし、アドホックな上限決め打ちは廃してほしい Windows版のVimはInsert modeで文字入力すると入力位置の右に制御コードのような文字列が表示されてしまう不具合が起きるようだ
実バッファには適用されないので画面表示だけの問題らしい
不具合が起きているVimのバージョンは以下のとおり
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Jul 14 2021 22:03:45)
MS-Windows 64 ビット コンソール 版
適用済パッチ: 1-3161
Compiled by appveyor@APPVYR-WIN ビルドが違うのでハッキリしたことは言えないけど、うちも8.2で問題なし
もしかするとターミナルの問題かもしれない、conhost(deprecated)使ってないか
MS純正ならwindows terminalとか試してみては >>948 の現象が最近また起きるようになった。不具合を確認したのは以下バージョン
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Nov 1 2021 23:08:29)
MS-Windows 64 ビット コンソール 版
適用済パッチ: 1-3570
Compiled by appveyor@APPVYR-WIN yしてpする前にdしたら、yした内容が変わってる
pしてからdするの
めんどくさっ nnoremap x "_xでレジスタ上書きしたくない時はxで消してる 日本語をタイプしたりすると、極端に面倒になるな
っていうか実質使えないって思うほど面倒
日本語入力になってる時は背景色を変えるなんてできる?
いちいち左上を見て確認したくない 単語や行などの対象をレジスタの内容と入れ替えられるコマンド(「pしてからd」相当)があった気がするけど何だっけ…
あったこれだ
https://vim-jp.org/vimdoc-ja/change.html#put-Visual-mode
単語とレジスタの内容を入れ替え
vep
行とレジスタの内容を入れ替え
Vp
大文字の P だとレジスタは更新せずに置き換え >>954
そんな問題ないけどおま環じゃね?左上がなんだか分からんけどvimの問題なの? >>956
どうやって日本語入力になってるか確認してんの? SKK習得して日本語はskkeleton使うようにしてからは日本語と半角英数が混ざった編集もかなり高速にできるようになった >>958
「英数」キー押せば英数だし、「かな」キー押せばかなになるし、いちいち確認しないだろ
他のアプリケーションの入力では問題発生しないけどvimだけその日本語切り替えの確認が必要なの? vimだと普通のエディタと違って日本語を入力し続ける場合でもカーソル移動の度に英数モードに戻さなければならないので厄介だというのはよく言われる話
切り替えのキーもスムーズには押せない位置にあるし >>960
なんでいちいち押す必要があるの無駄じゃね >>962
かなと英数の切り替えが必要なければ無駄に押す必要もないけど
他にどういう切り替え方法があるの? 切り替えることが問題じゃない、切り替えるべきかどうかの判断をするのに、視線を動かす時間がもったいと言ってるんだよ
その時間を短縮してガンガン生産したいだけ >>964
つい今さっきまで日本語を入力してたか英数を入力してたか忘れちゃうような脳味噌で何をガンガン生産するんだ? 日本語入力モードをインサートモードだけに固定したり、解除したりするプラグインがあったよ
名前は忘れた vsc使ったら生産効率激爆上がり
いつもより、4時間早く帰れるぜ vim(で仕事捗る)の(で嫁とセックルしてる時間が増えて)生産性はヤバい vim+HHKBで生産性激高
午前中で仕事終わったわ
帰る 20年くらい使ってるけど、未だにこれを超えれるエディタを見たことがない。
vim使うときはマウスの電源切れるから、電池の節約にもなるしな うちの会社のvim使いはマジでパネー
面倒だったから、cで書いたわ
って聞いてmake始めたら15分掛かったようなものを
15分で書いたんだって。
生産性高すぎるだろ vimの生産性が高いのではない
生産性の高いやつがvimを使うのだ コンソールで作業を完結したいってなるとなんとなくvimに行き着いてしまう >>977
そいつ、左辺値と右辺値の違いもわからないような人なんですけど。 あっちこっちで持ち上げている割には
日本語入力周りを本気で考えているカスタマイズ・ユーザをほとんど見ない。
つまりはそいうことだな。
素人お断りソフトVimの悪口は絶対に許さん! ・IMEは無効化
・denops.vim + skkeletonでSKK方式で日本語入力
・ddc.vim + pum.vimで補完候補を表示・選択
上記の方式にしてから日本語入力で不便さを感じることはほとんどない。 vimmer は、メール、チャット、ブラウザのテキストエリア等への
下書きを vim で書くもんじゃないの?
自分はファイルとして保存しない文章では、日本語よく使うけど git のコミットメッセージとかも日本語で書かないの? 日本人しかいない組織なのにわざわざ英語メッセージにしたがる人いるよね Linuxって未だにテキストしか扱うことできないの? ∧,,,∧
( ・∀・) 1000ならジュースでも飲むか
( )
し─J このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 2756日 16時間 41分 16秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。