ひよこメモ

備忘ブログ Ruby, Rails, AWS, html5, css3, javascript, vim,

escape_htmlって何?

【Sinatra】動的に追加した文字列からHTMLタグをエスケープする方法 - gaaamiiのブログ

この記事によると、

ユーザーがフォームに入力するようなサービスだったらスクリプト埋めこんだりできて、やばい

ということらしい

ドットインストールにもあった
#17 エスケープ処理を施そう | Sinatra入門 - プログラミングならドットインストール


javascriptコードなどを入力するとそれが実行されてしまう感じ

Ruby sinatraを使ってみる

sinatraはruby用のWebアプリフレームワーク

参考ブログ:
【初心者向け】RubyとSinatra、アンテナサイトの作り方 - gaaamiiのブログ

app.rb

require 'sinatra'
require 'rss'

get '/' do
  @rss = RSS::Parser.parse("http://hiyotama.hatenablog.com/rss")
  erb :index
end

views>layouts.erb

<!DOCTYPE html>
<html lang="ja">
	<head>
		<meta charset="utf-8">
		<title>ひよこのたまごブログ記事一覧</title>
	</head>
	<body>
		<h1>ひよこのたまごブログ記事一覧</h1>
		<%= yield %>
		</body>
</html>

layouts>index.erb

<ul>
	<% @rss.items.each do |entry| %>
		<li><a href="<%= entry.link %>"><%= entry.title %></a></li>
	<% end %>
</ul>


URLはhttp://localhost:4567/

app.rbのあるフォルダで

gem install sinatra を実行

ruby app.rb を実行


これだけでOKだった

railsにもviews>layouts.erbっぽいの出てきた気がする

vimのコマンド

:NERDTreeでNERDTree実行

タブ追加:C+t
分割の移動:C+w *2
ウインドウ横幅:C+w 数値 < or >
ウインドウ縦幅:C+w 数値 - or +

行削除:dd
トップ:gg ボトム:G
全削除:Shift+vで行選択 G d
行追加:o
予測変換:C+p
ファイルを水平分割して開く(下):i

コピペ
Vで行選択 yでコピー or dで切り取り pでペースト
バッファに記録するには “任意のアルファベットy
バッファからペーストするには “任意のアルファベットp

0:行頭へ
$:行末へ
b:1単語戻る(back word)
w:1単語進む(word)

MySQLのメモ 起動・移動・pathの設定・ログイン・ログアウト

MySQLの起動
/Library/StartupItems/MySQLCOM/MySQLCOM start

MySQLへ移動
usr/local/mysql/bin/mysql -u ユーザー名 -p

pathの設定
# MySQL Path Setting
export PATH=$PATH:/usr/local/mysql/bin

pathを通した後のログイン
mysql -u ユーザー名 -p

ログアウト
quit

HomeBrew + rbenvをインストールした時のメモ

homebrewでruby-buildとrbenvをインストールし、rbenvでrubyをインストールし、gemでrailsを作成する場合

export PATH="$HOME/.rbenv/bin:$PATH"
ではなく
export PATH="$HOME/.rbenv/shims:$PATH"

AWSでRailsをインストール

sudo yum update
sudo yum install -y libxslt-devel libxml2-devel gcc gcc-c++ ruby-devel sqlite-devel openssl-devel patch readline-devel libyaml-devel libffi-devel autoconf automake libtool bison git
sudo gem install nokogiri -- --use-system-libraries

git clone git://github.com/sstephenson/rbenv.git ~/.rbenv
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
source ~/.bash_profile
rbenv install 2.2.0;rbenv rehash
rbenv global 2.2.0

gem install io-console
gem uninstall io-console -v 0.4.2
gem install rails

ruby -v
rails -v
gem -v
bundle -v

mkdir rails
cd rails

rails new books

rails server -b 0.0.0.0

MacのBoot Campが削除できない時はディスクユーティリティでディスクを修復

①アプリケーション > ユーティリティ > Boot Campアシスタント起動

f:id:hiyotama:20150820074850j:plain

②削除にチェックを入れて続けるボタンを押す

f:id:hiyotama:20150820074935j:plain

③「お使いのディスクは単一ボリュームに復元できません。」というエラー発生

f:id:hiyotama:20150820075146j:plain

④アプリケーション > ユーティリティ > ディスクユーティリティ起動

f:id:hiyotama:20150820075328j:plain

⑤Macintosh HD選択後

f:id:hiyotama:20150820075249j:plain

⑥「ディスクを検証」を押すとエラーがたくさん出る

f:id:hiyotama:20150820075543j:plain

⑦Macを再起動し、直後にcommand+rを押し続ける→ディスクユーティリティの「ディスクを修復」選択

f:id:hiyotama:20150820075420j:plain

⑧再び再起動し、②を実行すると削除に成功する

f:id:hiyotama:20150820075810j:plain

vimproc's DLL: <root> is not found. Please read :help vimproc and make it.

vimを開いた時

vimproc's DLL: is not found. Please read :help vimproc and make it.

というエラーが出た



①コンソールで~/.vim/bundle/vimprocへ移動する

②makeと打つ

③ディレクトリにvimproc_mac.soが生成される


参考サイト:Vim

vimプラグイン

GitHubにあげておくといつでも復元できるので良い

ホームディレクトリにある「.vimrc」を編集

編集後vimで:NeoBundleInstallと打つと反映

https://github.com/Shougo/neobundle.vim
の機能を使いたかったら

NeoBundle 'Shougo/neobundle.vim'

と.vimrcに書き込めばいい