78
79

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

コマンドラインやvimから言語を指定してDash.appを呼び出す

Posted at

Dash - naoyaのはてなダイアリー で MacのDash.appが便利と話題らしい

もとはスニペットマネージャらしいですが、各言語のドキュメント閲覧に使うと非常に便利らしいです。

基本的な使い方は上記URLなりで見てもらうとして、少し凝った呼び出し方法を紹介。

まずは、コマンドラインから呼び出す方法。

$ open dash://[word]

$ open dash://'[word1] [word2]'

$ open dash://[language]:[word]

スペースを空けて検索ワードを追加することで、そのワードでページ内検索ができるようです。(分かりづらいですが実際にやってみると分かるかと思います。AND検索とはちょっと違うみたいです。)

また、コマンドラインから呼び出す場合は、クォーテーションで括ることで複数ワードを指定できるようです。
ただし、言語を指定した場合は複数ワードの指定ができないみたいです…
別のやり方があるのかもしれません。

さらに、上記コマンドを利用することでvimからも呼び出すことができます。
上記URLにもある通り、すでにvimから呼び出すコードが紹介されています。

今回はさらにこれに、filetypeを自動で入力するようにしてみました。

function! s:dash(...)
  let ft = &filetype
  if &filetype == 'python'
    let ft = ft.'2'
  endif
  let ft = ft.':'
  let word = len(a:000) == 0 ? input('Dash search: ', ft.expand('<cword>')) : ft.join(a:000, ' ')
  call system(printf("open dash://'%s'", word))
endfunction
command! -nargs=* Dash call <SID>dash(<f-args>)

これで、:Dash <word> 、または:Dash<Enter> のあとに検索ワードを入力することで検索できます。
filetype以外の言語で検索したい場合は、:Dash<Enter> の方をご利用ください。

また、言語によってはfiletypeそのままではダメな場合がありますので、適当に変更する処理を追加して下さい。
どの言語がどの名前で呼び出せるかは、設定>Docsets の2カラム目を参照して下さい。
自由に変更することもできるようです。

78
79
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
78
79

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?