Rubyでメソッドの定義場所を確認する
gem pry を使うと、$で簡単に確認できる
$ "".present? # From: /home/kinosuke/app/vendor/bundle/ruby/2.3.0/gems/activesupport-4.2.7/lib/active_support/core_ext/object/blank.rb @ line 23: # Owner: Object # Visibility: public # Number of lines: 3 # # def present? # !blank? # end
rpmでインストール&アンインストール
オプションをいつも忘れるのでメモ。
# インストール rpm -ivh https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.1.rpm # アンインストール rpm -e elasticsearch # アンインストールに問題ないか確認 # 何か問題あったらごにょごにょ出力される rpm -e --test elasticsearch # 詳細確認(インストールされているかどうか確認できる) rpm -q elasticsearch
My.vimrc
随時アップデート中
" " NeoBundle " first setting " curl https://raw.githubusercontent.com/Shougo/neobundle.vim/master/bin/install.sh | sh " vim " :NeoBundleInstall " if has('vim_starting') set runtimepath+=~/.vim/bundle/neobundle.vim call neobundle#begin(expand('~/.vim/bundle/')) NeoBundleFetch 'Shougo/neobundle.vim' NeoBundle 'scrooloose/nerdtree' NeoBundle 'jistr/vim-nerdtree-tabs' NeoBundle 'Shougo/neocomplcache' call neobundle#end() endif set number set ruler syntax on filetype plugin on " filetype indent on " 方向キー対応 " imap ^[OA <Up> " imap ^[OB <Down> " imap ^[OC <Right> " imap ^[OD <Left> " 全角記号対応 " set ambiwidth=double " colorscheme default " " NERDTree " " nnoremap <silent><C-e> :NERDTreeToggle<CR> " " NEADTreeTabs " nnoremap <silent><C-e> :NERDTreeTabsToggle<CR> " " neocomplcache " highlight Pmenu ctermbg=4 highlight PmenuSel ctermbg=1 highlight PMenuSbar ctermbg=4 " 補完ウィンドウの設定 set completeopt=menuone " 補完ウィンドウの設定 set completeopt=menuone " rsenseでの自動補完機能を有効化 let g:rsenseUseOmniFunc = 1 " let g:rsenseHome = '/usr/local/lib/rsense-0.3' " auto-ctagsを使ってファイル保存時にtagsファイルを更新 " let g:auto_ctags = 1 " 起動時に有効化 let g:neocomplcache_enable_at_startup = 1 " 大文字が入力されるまで大文字小文字の区別を無視する let g:neocomplcache_enable_smart_case = 1 " _(アンダースコア)区切りの補完を有効化 let g:neocomplcache_enable_underbar_completion = 1 let g:neocomplcache_enable_camel_case_completion = 1 " 最初の補完候補を選択状態にする let g:neocomplcache_enable_auto_select = 1 " ポップアップメニューで表示される候補の数 let g:neocomplcache_max_list = 20 " シンタックスをキャッシュするときの最小文字長 let g:neocomplcache_min_syntax_length = 3 " 補完の設定 autocmd FileType ruby setlocal omnifunc=rubycomplete#Complete if !exists('g:neocomplete#force_omni_input_patterns') let g:neocomplete#force_omni_input_patterns = {} endif let g:neocomplete#force_omni_input_patterns.ruby = '[^.*\t]\.\w*\|\h\w*::' if !exists('g:neocomplete#keyword_patterns') let g:neocomplete#keyword_patterns = {} endif let g:neocomplete#keyword_patterns['default'] = '\h\w*'
CSRの作成方法メモ
# genarate random text openssl md5 * > rand.dat # genarate private key openssl genrsa -rand rand.dat -des3 2048 > mydomain.com.key # generate csr openssl req -new -key mydomain.com.key -out mydomain.com.csr # confirm openssl req -in mydomain.com.csr -text # release private key openssl rsa -in mydomain.com.key
証明書の申請なんて滅多にやらなくなったなぁ。
RailsConsoleでサクッとメール送信
本番環境でメール送信チェックとかするとき用に。
ActionMailer::Base.mail(to: "test@example.com", from: "test@example.com", subject: "題名", body: "本文").deliver
RubyでHTTPリクエストを送る
たまにしか使わなくてよく忘れるのでメモします。
require 'net/http' require 'uri' uri = URI.parse("http://kinosuke.hatenablog.jp/") # when get request req = Net::HTTP::Get.new("#{uri.path}?#{uri.query}") # when post request # req = Net::HTTP::Post.new(uri.path) # req.set_form_data({first_name: 'taro', last_nem: 'yamada'}, ';') # when use basic auth # req.basic_auth('username', 'passowrd') http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = (uri.scheme == 'https') # これ無いとSSLページ接続時に「end of file reached (EOFError)」というエラー出る res = http.request(req) # keep-alive使わない版 res = http.start {|h| h.request(req) } # keep-alive使う版。ブロックが閉じた時点でセッションを閉じる case res when Net::HTTPSuccess, Net::HTTPRedirection # OK puts res.code puts res.body else # NG puts res.code puts res.body end
Rubyでログを強制出力する
require 'logger' _log = Logger.new('/tmp/debug.log') _log.info("#{ログ出力したいもの}")
こちらを参考にさせていただきました
http://dev.classmethod.jp/client-side/language-client-side/output_log_using_logger/