$30 off During Our Annual Pro Sale. View Details »

5

 5

Masafumi Okura

July 29, 2023
Tweet

More Decks by Masafumi Okura

Other Decks in Technology

Transcript

  1. Neovim, LSP, Ruby
    TokyuRubyձٞ14
    OKURA Masafumi, 2023-07-29

    View Slide

  2. ࣗݾ঺հ
    • ໊લɿେ૔խ࢙


    • ॴଐɿϑϦʔϥϯε


    • Vimྺɿ10೥ʢRubyྺͱಉ͡ʂʣ


    • ޷͖ͳVimͷίϚϯυɿuʢΞϯυΡʣ

    View Slide

  3. Neovim

    View Slide

  4. TreeSitter

    View Slide

  5. JSONͰఆٛ͞Ε
    ͨύʔαʔ

    View Slide

  6. ΑΓྑ͍


    ϋΠϥΠτͳͲ

    View Slide

  7. Ruby

    View Slide

  8. ඍົʹյΕ͍ͯΔ

    View Slide

  9. additional_vim_regex_highlightin
    g = { "ruby", "vim" }

    View Slide

  10. Vim૊ΈࠐΈͷ
    SyntaxΛ༗ޮԽ

    View Slide

  11. Ͱ͖Ε͹ͨ͘͠ͳ
    ͍…

    View Slide

  12. ੈ͸·͞ʹ


    ”େύʔαʔ࣌୅”


    * https://yui-knk.hatenablog.com/entry/2023/05/23/191049

    View Slide

  13. TreeSitterͷRuby
    ରԠΛվળͯ͘͠
    ΕΔਓɺٻΉʂ

    View Slide

  14. 1

    View Slide

  15. ͝ਗ਼ௌ͋Γ͕ͱ͏
    ͍͟͝·ͨ͠ʂ

    View Slide

  16. ωϧυϦοϓͰᔸΕΔ࠷ߴͷ
    ᘖᘣ
    TokyuRubyձٞ14
    OKURA Masafumi, 2023-07-29

    View Slide

  17. ࣗݾ঺հ
    • ໊લɿେ૔խ࢙


    • ॴଐɿϑϦʔϥϯε


    • ޷͖ͳᘖᘣ౾ͷḦΓํɿϑϨϯνϩʔετ


    • ޷͖ͳ٤஡ళɿೣ೬ࣷ

    View Slide

  18. ᘖᘣͷᔸΕํ

    View Slide

  19. ϖʔύʔυϦοϓ
    • ϝϦοτ


    • ָʢಛʹܕ෇͚ย෇͚ʣ


    • நग़ํ๏Λ޻෉Ͱ͖Δ


    • σϝϦοτ


    • ຯ͕୶ധʹͳΓ͕ͪʢϖʔύʔ͕ΦΠϧΛٵ͏ͷͰʣ


    • ϑΟϧλʔͷิॆ͕ඞཁ

    View Slide

  20. ϑϨϯνϓϨε
    • ϝϦοτ


    • ؆୯ͰᔸΕ΍͍͢


    • ΦΠϧ෼͕๛෋ͰίΫ͕͋Δ


    • σϝϦοτ


    • ث۩ͷ૟আ͕େม


    • คͬΆ͘ͳΔ


    • ࡉ͔͍ௐઅ͸ۤख

    View Slide

  21. ωϧυϦοϓ
    • ϝϦοτ


    • ΦΠϧ෼͕ద౓ʹग़͍ͯΔ


    • நग़ํ๏Λ޻෉Ͱ͖Δ


    • σϝϦοτ


    • ث۩ʢ෍ϑΟϧλʔʣͷ͓खೖΕ͕໘౗

    View Slide

  22. ωϧυϦοϓ͕


    Ұ൪ඒຯ͍͠


    ͱࢥ͏

    View Slide

  23. 2

    View Slide

  24. ͝ਗ਼ௌ͋Γ͕ͱ͏
    ͍͟͝·ͨ͠ʂ

    View Slide

  25. ActiveSupportͷIn
    fl
    ectorʹ
    ͍ͭͯ
    TokyuRubyձٞ14
    OKURA Masafumi, 2023-07-29

    View Slide

  26. ࣗݾ঺հ
    • ໊લɿେ૔խ࢙


    • ॴଐɿϑϦʔϥϯε


    • ޷͖ͳActiveSupportͷΫϥεɿIn
    fl
    ector


    • ਪ͠Railsίϛολʔɿbyroot

    View Slide

  27. In
    fl
    ector

    View Slide

  28. ୯਺ܗͱෳ਺ܗΛ
    ม׵ͨ͠Γ͢Δ

    View Slide

  29. camelize

    View Slide

  30. underscore

    View Slide

  31. ٯͷಈ͖Λ͢Δ

    View Slide

  32. ஫ҙ఺

    View Slide

  33. camelize(underscore('SSLError'))
    # => "SslError"

    View Slide

  34. 3

    View Slide

  35. ͝ਗ਼ௌʢུʣ

    View Slide

  36. Kaigi on Rails CFPͷ͓஌Βͤ
    TokyuRubyձٞ14
    OKURA Masafumi, 2023-07-29

    View Slide

  37. ࣗݾ঺հ
    • ໊લɿେ૔խ࢙


    • ॴଐɿϑϦʔϥϯε


    • ՝֎׆ಈɿKaigi on RailsͷӡӦ


    • ߦͬͯΈ͍ͨΧϯϑΝϨϯεɿEuruko

    View Slide

  38. Kaigi on Rails

    View Slide

  39. Call for Papers


    (Proposals)

    View Slide

  40. 7݄31೔·Ͱʂ

    View Slide

  41. https://
    okuramasafumi.hate
    nablog.jp/entry/
    2023/07/12/182236

    View Slide

  42. ϓϩϙʔβϧΛ


    ௨͢ςΫχοΫ

    View Slide

  43. 1. Ξϐʔϧ͢Δϙ
    ΠϯτΛ໌֬ʹ͢
    Δ

    View Slide

  44. 2. ௌऺΛ໌֬Խ͢
    Δ

    View Slide

  45. 3. ෼ྔΛॻ͘

    View Slide

  46. ຊฤ

    View Slide

  47. 10݄27೔,28೔

    View Slide

  48. ઙ૲ڮ


    ώϡʔϦοΫϗʔϧ&


    ΧϯϑΝϨϯε

    View Slide

  49. 4

    View Slide

  50. ͝ਗ਼ௌʢུʣ

    View Slide

  51. RubyͰϋϩʔϫʔϧυ͢Δ
    31൪໨ͷํ๏
    TokyuRubyձٞ14
    OKURA Masafumi, 2023-07-29

    View Slide

  52. ࣗݾ঺հ
    • ໊લɿେ૔խ࢙


    • ॴଐɿϑϦʔϥϯε


    • ޷͖ͳRubyͷϝιουɿinstance_eval


    • ޷͖ͳgemɿAlbaʢࣗ࡞ࣗԋʣ

    View Slide

  53. Ruby30प೥


    Πϕϯτ

    View Slide

  54. ʮRubyͰϋϩʔϫʔϧυ͢
    Δ30ͷํ๏ʯ

    View Slide

  55. 31൪໨ͷํ๏

    View Slide

  56. TokyuRubyձٞ

    View Slide

  57. %W(T H o e k l y l u o R , u \u0020
    b w y o K r a l i d g !
    i).select.with_index {|s, i|
    i.odd? }.join

    View Slide

  58. Hello, world!

    View Slide

  59. TokyuRubyKaigi

    View Slide

  60. 5

    View Slide

  61. ͝ਗ਼ௌ͋Γ͕ͱ͏
    ͍͟͝·ͨ͠ʂ

    View Slide