タグ

Tipsに関するkirakkingのブックマーク (53)

  • 中級 Vim 操作

    この記事は Vim 駅伝 の 06/05 の記事です。 前回の記事は thinca さんによる、 06/03 の「Meguro.vim #23 を開催しました」という記事でした。 次回は 06/07 に投稿される予定です。 はじめに 記事は以下の記事のオマージュです。 Vim の基操作のうち、比較的マイナーながら汎用的に使える機能や小技を集めました。プラグインや複雑な設定が必要なものは含まれておらず、いずれも VimNeovim の両方で使うことができます。気になったものがあれば使ってみてください。 ノーマルモード編 検索結果を次々と置き換える Vim で文字列置換を行う最も有名な方法は :substitute コマンド (短縮形: :s) ですが、ノーマルモードの cgn というイディオムも便利です。これは c オペレータと gn テキストオブジェクト (:h gn) を組み合

    中級 Vim 操作
    kirakking
    kirakking 2024/06/06
    周りの空白を巻き込むの、しょうがないな〜と思って使ってたけど、回避策があったんだ……。ヘルプをしっかり読むのがやっぱり一番大事。
  • 文字組版の教室 note版|モリサワ note編集部

    ベタ組とツメ組。日語の文字の並べ方を押さえよう みなさんは日語の文字の並べ方に「ベタ組」「ツメ組」という言葉があることをご存じでしょう…

    文字組版の教室 note版|モリサワ note編集部
  • Vim で日本語を使うための工夫

    概要 Vim を使いはじめてから 5年ぐらいになりますが、それ以来まとまった量の文章はほとんど全て Vim で書いてきました。その中には日語の文章も多く含まれているわけですが、Vim で日語を編集する際には英語やソースコードを書くときとには生じにくい問題がいくつか出てきます。 代表的な問題としては、IME がオンになったまま normal モードに戻ってしまうと normal モードのコマンドが打てなくなることや、f<char> や / による検索で IME 切り替えのコストが生じてしまうことがあります。 最近このあたりの環境改善についていくつか行ってみて、以前より日語ファイルの編集を行いやすくなっていると感じるので、その方法を紹介したいと思います。 環境 CUI 環境の vim を前提とします。gvim の IME 連携についてはこの記事では対象としません。 課題 Normal モ

    Vim で日本語を使うための工夫
    kirakking
    kirakking 2024/01/15
    vimを使ってそこそこ経つけど、digrap機能しらなかった。
  • git push -f が更に安全になる --force-if-includes - id:onk のはてなブログ

    歴史改変、してますか? 私は歴史改変が大好きで、毎日 rebase しています。なので割と毎日 git push -f することになっています。 口で -f と言っても、実際には --force-with-lease --force-if-includes をしているので、これらのオプションのご紹介。 この記事は はてなエンジニア Advent Calendar 2022 の 18 日目です。昨日は id:rokoucha さんで 壊れたデータベースとの向きあいかた - rokoucha でした。 qiita.com -f の危険性 ...--F--G--H <-- main という状態で push した後、H をコミットし直したとしよう。 ...--F--G--H' <-- main \ H <-- origin/main このまま H' (main) を origin/main に p

    git push -f が更に安全になる --force-if-includes - id:onk のはてなブログ
  • Gitのおすすめエイリアス5選 - 詩と創作・思索のひろば

    緊急新人エンジニア応援企画! ということで自分が Git のエイリアスとして設定している便利コマンドを紹介していく。 直前のコミットに追いコミットする (git fixit) git commit --amend --no-edit もろもろ整えて git push しよう、とすると「あっちょっと修正したい」となるのはよくあること。その際いちいちコミットメッセージを書いて rebase するかというとそんな面倒はとりたくなく、一撃で終わらせたい。--no-edit でコミットメッセージを編集せずに --amend できる。 git fixit に設定している。git commit の引数をそのまま受け付けるので、git fixit -a や git fixit <file> のように使える。 メインブランチに戻る (git com) f() { remote_head=$(git symb

    Gitのおすすめエイリアス5選 - 詩と創作・思索のひろば
  • A Vim Guide for Advanced Users

    #Tools #Vim #MouselessA Vim Guide for Advanced UsersWelcome to the third part of this series aimed to help you unleash a power never seen on Earth using the Almighty Vim. We’ll see together in this article: Some nice keystrokes beginning with g.What ranges are and how to use them.The quickfix list and the location lists.The marvelous substitute command.The crazy useful :global (or :g) command.What

    A Vim Guide for Advanced Users
    kirakking
    kirakking 2021/03/02
    "gi - Move to the last insertion you did and switch to INSERT mode." こんな便利な機能しらなかったとは。いつも g; で頑張って戻っていた。
  • KEN_ALL.csv を Vim でシュッとする

    この記事は Vim Advent Calendar 2020 25日目の記事です。 はじめに 年末ですね。年賀状ですね。インターネットが普及した現代、若い世代の人達においては年賀状を交わす事は少なくなってしまったかもしれません。しかし田舎育ちの僕やある程度年配の方々の世界線では年賀状は未だ変わらず有効なコミュニケーション手段として採用されており「アイツん家の子、大きくなったな」「アイツ随分老けたな」といった思い出回帰の方法としても使われています。 さて皆さんは年賀状をどの様に作っておられますか?手書きですか?それとも「筆○2020」等といった年賀状作成専用ソフトをお使いだったりしますか?僕は毎年 LibreOffice の宛名書き印刷を使っています。 LibreOfficeで宛名印刷(縦書き/連名): ひろろろぐ LibreOffice で差し込み印刷する記事は沢山あるのですが、連名がちゃ

    KEN_ALL.csv を Vim でシュッとする
    kirakking
    kirakking 2020/12/25
    submatch, E935 これは便利。
  • 明日から使える Command-line window テクニック - Qiita

    この記事は Vim Advent Calendar 7 日目の記事です.6 日目の記事は daisuzu さんによる VimのtagfuncでLSPを使う でした.8 日目は gorilla0513 さんの記事が入る予定です. はじめに 皆さんは Vim の Command-line window をご存知でしょうか. 名前に馴染みがなくとも,あるいは「意図して」使ったことがなくとも,見たことのある方なら多いかもしれません.そう,Vim を終了しようと思って :q と押したつもりが間違って q: と押してしまったときに起動してしまう,あの画面です. Vim 初心者にとっては初見殺しのこの画面.私も初めて出会ったときはとても困惑しました.Vim を終了させようとしたのに,終了しないどころか代わりに変な画面が出てきた.得体の知れないこの画面をどう閉じれば良いかも分からない(<ESC> を押して

    明日から使える Command-line window テクニック - Qiita
    kirakking
    kirakking 2019/12/13
    C-f打っても効かないなーって思ったら、自分でEmacs風キーバインドを設定して潰してた。便利。
  • Make Vimmer Happy Again | ラング・ラグー

    稿は Vim Advent Calendar 2016 の12日目の記事です. 今年の9月に Vim 8.0 がリリースされました.これに伴って追加された Vim の新機能は数多くありますが,その中に:smileコマンドというものがあることをご存知でしょうか.私は Yokohama.vim #8 に参加した際に知りました.このコマンドは,実行すると次のような「スマイル」が表示されます. :smileのヘルプを見ると “make the user happy(ユーザを幸せにする)” と解説されています.確かに,これは大変愉快で素晴らしい新機能だと思いました. しかし,惜しいことにこの機能はユーザ(Vimmer)に対する考察がほんのわずかに足りていないようにも思われます.すなわち「ある Vimmer が unhappy なとき,その Vimmer に:smileコマンドを叩く余裕があるだろう

    Make Vimmer Happy Again | ラング・ラグー
  • シェルとファイルデスクリプタのお話 - Qiita

    Shell Script Advent Calendar 2016が始まりました。1日目は私です。好きなシェルはBashです。 はじめに ファイルデスクリプタを知ることで、よりスマートにシェルを記述でき、シェル芸の幅も広がります。この記事はシェルとファイルデスクリプタの理解を深めることを目的としており、対象は次のような人です。 パイプ・リダイレクトをうまく使えない人 2>&1 の置き場所にいつも迷う人、そもそも2>&1が何って人? シェルの作業で中間ファイルを作成している人 ファイルデスクリプタとは ファイルデスクリプタ (FD) とは、プロセスが入出力するファイルやデバイスを扱うためのインターフェイスです。これはUNIX系OSのデバイスとファイルは透過的に扱えることと関係し、任意のファイルもデバイスも同じAPIで操作できます。 FDは扱うデバイス・ファイルごとに番号が振られ、プログラムは

    シェルとファイルデスクリプタのお話 - Qiita
  • vimをパイプにする - 余白の書きなぐり

    この記事は Vim Advent Calendar 2016 (その2) の3日目の記事です。 ノーマルモード以外をパイプとして使う際の情報を追記しました (2016/12/04) UNIXのテキスト処理 UNIXでテキストを自動整形する際、パイプ機能は欠かせない。 $ cat a.txt 1 hoge 2 piyo 3 fuga $ cat a.txt |sed 's/piyo/foo/' |grep '2' 2 foo シェル上で | というパイプ記号を使ってコマンドを次々繋げることで、複雑なテキスト処理をこなすわけだ。 パイプは便利だが、テキストエディタをパイプとして使う人はあまり見かけない。 テキストエディタ=対話的 という常識があるため、パイプのような自動処理とは相性が悪いと思われているのだろう。 しかし今日はあえて、シェルスクリプトやワンライナーの中にvimを埋め込み、パイプと

    vimをパイプにする - 余白の書きなぐり
  • 殆どの人が無変換キーを使わないって聞いてカルチャーショック受けた

    「無変換キー」で検索すると「無変換キーにIMEオンオフ機能を割り当てると快適」っていう記事がトップに出てくる始末 皆普通の変換でカタカナ出してるの? それともF7やF8でカタカナ変換してるの?キー遠くね? ちなみに無変換キーの機能は「文字を全角カタカナか半角カタカナに変換」です。

    殆どの人が無変換キーを使わないって聞いてカルチャーショック受けた
    kirakking
    kirakking 2016/01/31
    試しに無変換押してみたら無反応だった Ubuntu/uim-mozc な今日このごろ。しかもC-{u,i,o,p,@}でひらがな、全角カナ、半角カナ、全角英数、半角英数だった。
  • 検索ではあんまり出ないbashの便利技 - Qiita

    bashでは記号類をたくさん使うので、この書き方は何?と思っても検索でなかなか出てこないことがあると思う。 そこで知っていると便利なコマンドを残しておく。 随時追記予定。 確認に使用したbashのバージョンは以下のとおり。

    検索ではあんまり出ないbashの便利技 - Qiita
    kirakking
    kirakking 2015/09/21
    最後の二つ知らなんだ > !$ == ^[. ; !:n == n番目の引数(マイナス可) ; !xxx == 最後のxxxで始まるコマンド
  • テキストでないファイルのdiff(差分)をとる方法 - ザリガニが見ていた...。

    AppleScriptはスクリプト言語なんだけど、ファイルに保存するときはAppleScript形式にコンパイル(変換)される。その結果、AppleScriptエディタでは人間が理解できるコードに見えるのに、普通のテキストエディタで開くとこんな状態。 その実態は、AppleScript独自のバイナリファイルなのだ。バイナリファイルの痛いところは、diffを実行してもそのままでは差分がとれないこと。どうしても差分をとりたいと思うのなら、いったんAppleScriptファイルを開いて、テキストファイルとして保存したファイルに対してdiffを実行するしかない。 しかし、それでは手間がかかりすぎる。手軽にdiffできないと、いずれ使わなくなる。そんな訳で「AppleScriptはバイナリファイルなのだから、しょうがない」と以前から諦めていたところがあった。(Gitのあの素晴らしい仕組みを知るまでは

    テキストでないファイルのdiff(差分)をとる方法 - ザリガニが見ていた...。
  • Macros

    Example[] Given some data like the following: one first example two second example three third example four fourth example suppose you want to change the data to make a dictionary for a Python program, with this result: data = { 'one': 'first example', 'two': 'second example', 'three': 'third example', 'four': 'fourth example', } To do this, record a macro while changing the first line. Then, play

    Macros
    kirakking
    kirakking 2015/02/17
    マクロの内容を表示するときは :echo @x (x は マクロのレジスタ名)
  • LaTeX 数式の縦/横の調整(Kodama's tips page)

    Kodama's home / tips. Sample LaTeX file LaTeX samples to manage a margin or position of item. math-margin.tex math-margin.dvi LaTeX の数式の \sqrt や \frac の微妙なすき間が気になりませんか? 表示の微調整が必要になって途方に暮れた事はありませんか? 様々な記号を組み合わせて, LaTeXに無い新しい文字や記号を作りたくなりませんか? 文字や記号を格納するボックスの紙面への配置は, TeX, LaTeX の機能そのものと云ってもよい. ここでその全てを説明するほどの余裕はない. 以下では, 数式やテキストの要素の調整に利用することが多いもののみを紹介する. 長さの単位については, 長さ/距離の単位 を参照. 扱うもの: 記号の組み合わせの手法. 要

  • 初心者向け、「上手い」シェルスクリプトの書き方メモ - Qiita

    ここ最近、沢山シェルスクリプトを書くようになりました。 元々あまりシェルスクリプトを書いたこと無かったので、色々と勉強しつつ書いてるのですが、 他のプログラミング言語とはちょっと違って独特なクセというか、発見の度におぉー!ってなることが沢山あって楽しいです。 そんなわけで、最近学んだり参考にした中で特に感動したシェルの上手い書き方をまとめてみます。 きっとまだ知らないこととかもっと上手くやる方法なんかが沢山見つかりそうなので、 もっといいやり方あるよ!って方はコメントください 何もしない : (コロン)コマンド シェルを書いていた時に非常に欲しかったコマンドがこれ!何もしない! : というコマンド(?)を利用すると、何もせずに終了ステータス0(つまり正常終了)を返します。 これが様々な事に使える万能コマンドで、これによって面倒なエラー処理を簡潔にできたり、 入力や出力のリダイレクト元/先と

    初心者向け、「上手い」シェルスクリプトの書き方メモ - Qiita
    kirakking
    kirakking 2015/02/02
    ':'コマンド知らなんだ。OCaml でいうとこの ignore なのか。
  • vimでコマンドラインウインドウを使わないのはもったいない - Qiita

    コマンドラインウインドウって何? :で実行したExコマンドや/と?で検索した履歴をvimのウインドウに表示したり再実行できる機能です。 コマンドモードは1行しかないので履歴を辿るのに視認性が悪かったり、カーソル移動が矢印キーなので面倒だったりしますが、コマンドラインウインドウではウインドウ内に数行分の履歴を表示したり、vimのカーソル移動やコマンドを実行できるので、使いやすくなっています。 ※ここで言うウインドウはWindowsMacのウインドウではなく、vimのウインドウです。 どうやって使うの? 履歴を表示、実行する Exコマンドの場合、:の代わりにq:を入力するとvimのウインドウが分割されて下側にコマンド履歴が表示されます。 vimを終了する:qと間違えて入力したことがある人は見覚えがないでしょうか? ここでEnterを入力するとカーソルがある行のコマンドが実行されます。もちろん

    vimでコマンドラインウインドウを使わないのはもったいない - Qiita
    kirakking
    kirakking 2014/12/17
    "また、履歴から前方検索したい場合は/の代わりにq/、後方検索の場合は?の代わりにq?を入力すると同様にコマンドラインウインドウが開きます。" これは知らなかった。
  • Vim Advent Calendar 2013 110日目: Vim script からキー入力を呼び出す - C++でゲームプログラミング

    この記事は Vim Advent Calendar 2013 110日目の記事になります。 1つ飛んでいるような気がしますが書きたい方がいれば教えて下さい。 さて、今回は Vim script からキー入力を呼び出す方法について簡単に書きます。 [:normal {commands} を使う] {commands} を実行します。 これは {commands} がノーマルモードからキー入力され時と同じように実行されます。 " カーソル行を "a に保存する " ! を付けた場合はマップを展開しない normal! "add " 特殊キーを含める場合は execute "\" を利用する必要がある execute "normal! :echo 42\<CR>" " <Plug> したキーマップを呼び出したり execute "normal \<Plug>(hoge)" 基的にはこのコマンド

    Vim Advent Calendar 2013 110日目: Vim script からキー入力を呼び出す - C++でゲームプログラミング
    kirakking
    kirakking 2014/12/17
    これがしたかった。
  • Vimでパターン検索するなら知っておいたほうがいいこと - derisの日記

    この記事はVim Advent Calendar 2012の166日目の記事です。 165日目はaueweさんによる.vimrcに書くべきでないVimの設定項目でした。 Vimに限りませんが、テキストエディタを使う際にテキスト検索はよく使うと思います。 ある程度慣れた人だと正規表現を用いたパターン検索を使うようになります。 もちろん、Vimにも正規表現を用いたパターン検索を行う機能は備わっています。 しかし、お世辞にもVimのデフォルト設定ではパターン検索は書きやすいとは言えません。 特に、他の正規表現方言に慣れている人は、Vimの正規表現の書き方の違いに戸惑うと思います。 記事では、Vimでパターン検索するなら知っておいたほうがいいこと+ Vimのパターン検索に使えるメタ文字をご紹介します。 パターンって何?という方は:help usr_27.txtを一読することをおすすめします。 一

    Vimでパターン検索するなら知っておいたほうがいいこと - derisの日記
    kirakking
    kirakking 2014/07/22
    \zs, \ze, %(...), %[...] 知らなかった。これは便利だ覚えよう。