├── .github ├── actions │ └── vimhelp-nvcheck │ │ ├── Dockerfile │ │ ├── action.yml │ │ └── entrypoint.sh ├── dependabot.yml └── workflows │ ├── depup.yml │ ├── generate.yml │ ├── report.yml │ ├── reviewdog.yml │ └── vimhelptagcheck.yml ├── .gitignore ├── Makefile ├── README-dist.md ├── README.md ├── dict.yml ├── doc ├── arabic.jax ├── autocmd.jax ├── builtin.jax ├── change.jax ├── channel.jax ├── cmdline.jax ├── debug.jax ├── debugger.jax ├── develop.jax ├── diff.jax ├── digraph.jax ├── editing.jax ├── eval.jax ├── farsi.jax ├── filetype.jax ├── fold.jax ├── ft_ada.jax ├── ft_context.jax ├── ft_hare.jax ├── ft_mp.jax ├── ft_ps1.jax ├── ft_raku.jax ├── ft_rust.jax ├── ft_sql.jax ├── gui.jax ├── gui_w32.jax ├── gui_x11.jax ├── hangulin.jax ├── help.jax ├── helphelp.jax ├── howto.jax ├── if_cscop.jax ├── if_lua.jax ├── if_mzsch.jax ├── if_ole.jax ├── if_perl.jax ├── if_pyth.jax ├── if_ruby.jax ├── if_sniff.jax ├── if_tcl.jax ├── indent.jax ├── index.jax ├── insert.jax ├── intro.jax ├── map.jax ├── mbyte.jax ├── message.jax ├── mlang.jax ├── motion.jax ├── netbeans.jax ├── options.jax ├── os_390.jax ├── os_amiga.jax ├── os_beos.jax ├── os_dos.jax ├── os_haiku.jax ├── os_mac.jax ├── os_mint.jax ├── os_msdos.jax ├── os_os2.jax ├── os_qnx.jax ├── os_risc.jax ├── os_unix.jax ├── os_vms.jax ├── os_win32.jax ├── pattern.jax ├── pi_getscript.jax ├── pi_gzip.jax ├── pi_logipat.jax ├── pi_netrw.jax ├── pi_paren.jax ├── pi_spec.jax ├── pi_tar.jax ├── pi_tutor.jax ├── pi_vimball.jax ├── pi_zip.jax ├── popup.jax ├── print.jax ├── quickfix.jax ├── quickref.jax ├── quotes.jax ├── recover.jax ├── remote.jax ├── repeat.jax ├── rileft.jax ├── russian.jax ├── scroll.jax ├── sign.jax ├── spell.jax ├── sponsor.jax ├── starting.jax ├── syntax.jax ├── tabpage.jax ├── tagsrch.jax ├── term.jax ├── terminal.jax ├── testing.jax ├── textprop.jax ├── tips.jax ├── uganda.jax ├── undo.jax ├── userfunc.jax ├── usr_01.jax ├── usr_02.jax ├── usr_03.jax ├── usr_04.jax ├── usr_05.jax ├── usr_06.jax ├── usr_07.jax ├── usr_08.jax ├── usr_09.jax ├── usr_10.jax ├── usr_11.jax ├── usr_12.jax ├── usr_20.jax ├── usr_21.jax ├── usr_22.jax ├── usr_23.jax ├── usr_24.jax ├── usr_25.jax ├── usr_26.jax ├── usr_27.jax ├── usr_28.jax ├── usr_29.jax ├── usr_30.jax ├── usr_31.jax ├── usr_32.jax ├── usr_40.jax ├── usr_41.jax ├── usr_42.jax ├── usr_43.jax ├── usr_44.jax ├── usr_45.jax ├── usr_50.jax ├── usr_51.jax ├── usr_52.jax ├── usr_90.jax ├── usr_toc.jax ├── various.jax ├── version4.jax ├── version8.jax ├── version9.jax ├── vi_diff.jax ├── vietnamese.jax ├── vim9.jax ├── vim9class.jax ├── visual.jax ├── windows.jax └── workshop.jax ├── en ├── arabic.txt ├── autocmd.txt ├── builtin.txt ├── change.txt ├── channel.txt ├── cmdline.txt ├── debug.txt ├── debugger.txt ├── develop.txt ├── diff.txt ├── digraph.txt ├── editing.txt ├── eval.txt ├── farsi.txt ├── filetype.txt ├── fold.txt ├── ft_ada.txt ├── ft_context.txt ├── ft_hare.txt ├── ft_mp.txt ├── ft_ps1.txt ├── ft_raku.txt ├── ft_rust.txt ├── ft_sql.txt ├── gui.txt ├── gui_w32.txt ├── gui_x11.txt ├── hangulin.txt ├── help.txt ├── helphelp.txt ├── howto.txt ├── if_cscop.txt ├── if_lua.txt ├── if_mzsch.txt ├── if_ole.txt ├── if_perl.txt ├── if_pyth.txt ├── if_ruby.txt ├── if_sniff.txt ├── if_tcl.txt ├── indent.txt ├── index.txt ├── insert.txt ├── intro.txt ├── map.txt ├── mbyte.txt ├── message.txt ├── mlang.txt ├── motion.txt ├── netbeans.txt ├── options.txt ├── os_390.txt ├── os_amiga.txt ├── os_beos.txt ├── os_dos.txt ├── os_haiku.txt ├── os_mac.txt ├── os_mint.txt ├── os_msdos.txt ├── os_os2.txt ├── os_qnx.txt ├── os_risc.txt ├── os_unix.txt ├── os_vms.txt ├── os_win32.txt ├── pattern.txt ├── pi_getscript.txt ├── pi_gzip.txt ├── pi_logipat.txt ├── pi_netrw.txt ├── pi_paren.txt ├── pi_spec.txt ├── pi_tar.txt ├── pi_tutor.txt ├── pi_vimball.txt ├── pi_zip.txt ├── popup.txt ├── print.txt ├── quickfix.txt ├── quickref.txt ├── quotes.txt ├── recover.txt ├── remote.txt ├── repeat.txt ├── rileft.txt ├── russian.txt ├── scroll.txt ├── sign.txt ├── spell.txt ├── sponsor.txt ├── starting.txt ├── syntax.txt ├── tabpage.txt ├── tagsrch.txt ├── term.txt ├── terminal.txt ├── testing.txt ├── textprop.txt ├── tips.txt ├── uganda.txt ├── undo.txt ├── userfunc.txt ├── usr_01.txt ├── usr_02.txt ├── usr_03.txt ├── usr_04.txt ├── usr_05.txt ├── usr_06.txt ├── usr_07.txt ├── usr_08.txt ├── usr_09.txt ├── usr_10.txt ├── usr_11.txt ├── usr_12.txt ├── usr_20.txt ├── usr_21.txt ├── usr_22.txt ├── usr_23.txt ├── usr_24.txt ├── usr_25.txt ├── usr_26.txt ├── usr_27.txt ├── usr_28.txt ├── usr_29.txt ├── usr_30.txt ├── usr_31.txt ├── usr_32.txt ├── usr_40.txt ├── usr_41.txt ├── usr_42.txt ├── usr_43.txt ├── usr_44.txt ├── usr_45.txt ├── usr_50.txt ├── usr_51.txt ├── usr_52.txt ├── usr_90.txt ├── usr_toc.txt ├── various.txt ├── version4.txt ├── version8.txt ├── version9.txt ├── vi_diff.txt ├── vietnamese.txt ├── vim9.txt ├── vim9class.txt ├── visual.txt ├── windows.txt └── workshop.txt ├── syntax └── help_ja.vim ├── tools ├── buildhtml.vim ├── makehtml.vim ├── maketags.vim ├── script │ └── get_doc_info.sh ├── syntax │ └── help.vim ├── tag_aliases.vim └── untranslated.vim └── vim_faq ├── README ├── vim_faq.jax └── vim_faq.txt /.github/actions/vimhelp-nvcheck/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM golang:1.18.5-alpine3.16 2 | 3 | ENV REVIEWDOG_VERSION=v0.20.3 4 | 5 | # hadolint ignore=DL3006 6 | RUN apk --no-cache add git 7 | 8 | RUN wget -O - -q https://raw.githubusercontent.com/reviewdog/reviewdog/master/install.sh| sh -s -- -b /usr/local/bin/ ${REVIEWDOG_VERSION} 9 | 10 | RUN go install github.com/koron/nvcheck@latest 11 | 12 | COPY entrypoint.sh /entrypoint.sh 13 | 14 | ENTRYPOINT ["/entrypoint.sh"] 15 | -------------------------------------------------------------------------------- /.github/actions/vimhelp-nvcheck/action.yml: -------------------------------------------------------------------------------- 1 | name: 'Run nvcheck with reviewdog' 2 | description: '🐶Run nvcheck with reviewdog on pull requests to improve document writing experience.' 3 | author: 'Tsuyoshi CHO ' 4 | inputs: 5 | github_token: 6 | description: 'GITHUB_TOKEN.' 7 | required: true 8 | default: ${{ github.token }} 9 | level: 10 | description: 'Report level for reviewdog [info,warning,error]' 11 | default: 'error' 12 | reporter: 13 | description: | 14 | Reporter of reviewdog command [github-check,github-pr-review]. 15 | Default is github-pr-review. 16 | github-pr-review can use Markdown and add a link to rule page in reviewdog reports. 17 | default: 'github-pr-review' 18 | filter_mode: 19 | description: | 20 | Filtering mode for the reviewdog command [added,diff_context,file,nofilter]. 21 | Default is added. 22 | default: 'added' 23 | fail_on_error: 24 | description: | 25 | Exit code for reviewdog when errors are found [true,false] 26 | Default is `false`. 27 | default: 'false' 28 | reviewdog_flags: 29 | description: 'Additional reviewdog flags' 30 | default: '' 31 | tool_name: 32 | description: 'Tool name to use for reviewdog reporter' 33 | default: 'nvcheck' 34 | runs: 35 | using: 'docker' 36 | image: 'Dockerfile' 37 | branding: 38 | icon: 'chevron-down' 39 | color: 'green' 40 | -------------------------------------------------------------------------------- /.github/actions/vimhelp-nvcheck/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | if [ -n "${GITHUB_WORKSPACE}" ] ; then 4 | cd "${GITHUB_WORKSPACE}" || exit 1 5 | git config --global --add safe.directory "${GITHUB_WORKSPACE}" || exit 1 6 | fi 7 | 8 | export REVIEWDOG_GITHUB_API_TOKEN="${INPUT_GITHUB_TOKEN}" 9 | 10 | reviewdog_exit_val="0" 11 | # shellcheck disable=SC2086 12 | find doc -name \*.jax -print0 | xargs -0 nvcheck \ 13 | | reviewdog -efm="%f:%l: %m" \ 14 | -name="${INPUT_TOOL_NAME}" \ 15 | -reporter="${INPUT_REPORTER:-github-pr-review}" \ 16 | -filter-mode="${INPUT_FILTER_MODE}" \ 17 | -fail-on-error="${INPUT_FAIL_ON_ERROR}" \ 18 | -level="${INPUT_LEVEL}" \ 19 | ${INPUT_REVIEWDOG_FLAGS} || reviewdog_exit_val="$?" 20 | 21 | # github-pr-review only diff adding 22 | if [ "${INPUT_REPORTER}" = "github-pr-review" ]; then 23 | # fix 24 | find doc -name \*.jax -print0 | xargs -0 nvcheck -i 25 | 26 | TMPFILE=$(mktemp) 27 | git diff >"${TMPFILE}" 28 | 29 | # shellcheck disable=SC2086 30 | reviewdog \ 31 | -name="nvcheck-fix" \ 32 | -f=diff \ 33 | -f.diff.strip=1 \ 34 | -name="${INPUT_TOOL_NAME}-fix" \ 35 | -reporter="github-pr-review" \ 36 | -filter-mode="diff_context" \ 37 | -level="${INPUT_LEVEL}" \ 38 | ${INPUT_REVIEWDOG_FLAGS} < "${TMPFILE}" 39 | 40 | git restore . || true 41 | rm -f "${TMPFILE}" 42 | fi 43 | 44 | # Throw error if an error occurred and fail_on_error is true 45 | if [ "${INPUT_FAIL_ON_ERROR}" = "true" ] && [ "${reviewdog_exit_val}" != "0" ]; then 46 | exit 1 47 | fi 48 | 49 | # EOF 50 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | - package-ecosystem: "github-actions" # See documentation for possible values 9 | directory: "/" # Location of package manifests 10 | schedule: 11 | interval: "weekly" 12 | -------------------------------------------------------------------------------- /.github/workflows/depup.yml: -------------------------------------------------------------------------------- 1 | name: depup 2 | on: 3 | schedule: 4 | - cron: '35 9 2,13,25 * *' # Runs at 9:35 UTC 2,13,25 per month 5 | permissions: 6 | contents: write 7 | pull-requests: write 8 | 9 | jobs: 10 | reviewdog: 11 | runs-on: ubuntu-latest 12 | steps: 13 | - name: Checkout 14 | uses: actions/checkout@v4 15 | with: 16 | submodules: true 17 | 18 | - name: Check depup 19 | uses: haya14busa/action-depup@v1 20 | id: depup 21 | with: 22 | file: .github/actions/vimhelp-nvcheck/Dockerfile 23 | version_name: REVIEWDOG_VERSION 24 | repo: reviewdog/reviewdog 25 | 26 | - uses: actions/create-github-app-token@v2 27 | id: app-token 28 | with: 29 | app-id: ${{ vars.VIM_JP_BOT_APP_ID }} 30 | private-key: ${{ secrets.VIM_JP_BOT_PRIVATE_KEY }} 31 | 32 | - name: Create Pull Request 33 | uses: peter-evans/create-pull-request@v7 34 | with: 35 | token: ${{ steps.app-token.outputs.token }} 36 | author: 'github-actions <41898282+github-actions[bot]@users.noreply.github.com>' 37 | title: "chore(deps): update ${{ steps.depup.outputs.repo }} to ${{ steps.depup.outputs.latest }}" 38 | commit-message: "chore(deps): update ${{ steps.depup.outputs.repo }} to ${{ steps.depup.outputs.latest }}" 39 | body: | 40 | Update ${{ steps.depup.outputs.repo }} to [${{ steps.depup.outputs.latest }}](https://github.com/${{ steps.depup.outputs.repo }}/releases/tag/v${{ steps.depup.outputs.latest }}) 41 | 42 | This PR is auto generated by [depup workflow](https://github.com/${{ github.repository }}/actions?query=workflow%3A${{ github.workflow }}). 43 | branch: depup/${{ steps.depup.outputs.repo }} 44 | -------------------------------------------------------------------------------- /.github/workflows/generate.yml: -------------------------------------------------------------------------------- 1 | name: Generate vim help 2 | on: 3 | push: 4 | branches: 5 | - master 6 | 7 | concurrency: vimdoc-ja-deploy 8 | # global concurrency limit access to vim-jp/vimdoc-ja per workflow 9 | 10 | jobs: 11 | generate: 12 | runs-on: ubuntu-latest 13 | steps: 14 | - name: Initialization 15 | run: | 16 | sudo apt-get update 17 | # libfuse2 and LD_PRELOAD are needed for appimage. 18 | sudo apt-get -y install libfuse2 19 | echo "LD_PRELOAD=/lib/x86_64-linux-gnu/libgmodule-2.0.so" >> $GITHUB_ENV 20 | - name: checkout master 21 | uses: actions/checkout@v4 22 | with: 23 | path: work 24 | - name: Checkout vimdoc-ja 25 | uses: actions/checkout@v4 26 | with: 27 | path: target 28 | repository: 'vim-jp/vimdoc-ja' 29 | ssh-key: ${{ secrets.VIMDOC_JA_SSH_KEY }} 30 | - name: Setup Vim 31 | uses: thinca/action-setup-vim@v2 32 | with: 33 | vim_version: 'v9.1.0065' 34 | vim_type: 'Vim' 35 | - name: Generate new document 36 | run: | 37 | cd work 38 | # Create tags 39 | vim -eu tools/maketags.vim 40 | 41 | cd .. 42 | - name: Check commit ID 43 | id: commitid 44 | run: | 45 | echo "id=$(git -C work rev-parse HEAD)" >> $GITHUB_OUTPUT 46 | - name: Update target 47 | run: | 48 | cd target 49 | # update latest 50 | git pull --rebase 51 | cd .. 52 | - name: Install new document 53 | run: | 54 | # install 55 | rsync -rlptD --delete-after work/doc/ target/doc 56 | rsync -rlptD --delete-after work/syntax/ target/syntax 57 | rsync -rlptD --delete-after work/README-dist.md target/README.md 58 | - name: Commit updated master branch 59 | uses: EndBug/add-and-commit@v9 60 | with: 61 | cwd: './target' 62 | default_author: github_actions 63 | message: |- 64 | Generated by GitHub workflow ${{ github.run_id }} 65 | 66 | https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} 67 | 68 | Used commit: 69 | https://github.com/${{ github.repository }}/commit/${{ steps.commitid.outputs.id }} 70 | 71 | deploy: 72 | runs-on: ubuntu-latest 73 | needs: generate 74 | # "deploy" update vimdoc-ja/gh-pages branch 75 | # work after "generate" to updated vimdoc-ja/master branch 76 | # parallel work conflict vimdoc-ja repo status 77 | steps: 78 | - name: Initialization 79 | run: | 80 | sudo apt-get update 81 | # libfuse2 and LD_PRELOAD are needed for appimage. 82 | sudo apt-get -y install libfuse2 83 | echo "LD_PRELOAD=/lib/x86_64-linux-gnu/libgmodule-2.0.so" >> $GITHUB_ENV 84 | - name: checkout master 85 | uses: actions/checkout@v4 86 | with: 87 | path: work 88 | - name: Checkout vimdoc-ja 89 | uses: actions/checkout@v4 90 | with: 91 | path: target 92 | repository: 'vim-jp/vimdoc-ja' 93 | ssh-key: ${{ secrets.VIMDOC_JA_SSH_KEY }} 94 | ref: gh-pages 95 | - name: Setup Vim 96 | uses: thinca/action-setup-vim@v2 97 | with: 98 | vim_version: 'v9.1.0065' 99 | vim_type: 'Vim' 100 | - name: Generate new document 101 | run: | 102 | cd work 103 | # Create html documents 104 | make html 105 | 106 | cd .. 107 | - name: Check commit ID 108 | id: commitid 109 | run: | 110 | echo "id=$(git -C work rev-parse HEAD)" >> $GITHUB_OUTPUT 111 | - name: Update target 112 | run: | 113 | cd target 114 | # update latest 115 | git pull --rebase 116 | cd .. 117 | - name: Install new document 118 | run: | 119 | # install 120 | cp work/target/html/doc/*.html target 121 | - name: Commit updated master branch 122 | uses: EndBug/add-and-commit@v9 123 | with: 124 | cwd: './target' 125 | default_author: github_actions 126 | message: |- 127 | Generated by GitHub workflow ${{ github.run_id }} 128 | 129 | https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} 130 | 131 | Used commit: 132 | https://github.com/${{ github.repository }}/commit/${{ steps.commitid.outputs.id }} 133 | -------------------------------------------------------------------------------- /.github/workflows/report.yml: -------------------------------------------------------------------------------- 1 | name: Update report 2 | on: 3 | push: 4 | branches: 5 | - master 6 | paths: 7 | - 'en/**' 8 | schedule: 9 | - cron: '30 15 * * SAT' 10 | workflow_dispatch: 11 | permissions: 12 | issues: write 13 | 14 | jobs: 15 | report: 16 | name: Update help diff report 17 | runs-on: ubuntu-latest 18 | steps: 19 | - name: Get current time 20 | uses: 1466587594/get-current-time@v2 21 | id: current-time 22 | - name: Checkout vimdoc-ja-working 23 | uses: actions/checkout@v4 24 | with: 25 | path: work 26 | - name: Checkout vim 27 | uses: actions/checkout@v4 28 | with: 29 | repository: vim/vim 30 | path: vim 31 | - name: Build report 32 | run: | 33 | bash work/tools/script/get_doc_info.sh 34 | echo Update ${{ steps.current-time.outputs.ISOTime }} >> doc_info.md 35 | - name: Create or Update issue 36 | uses: peter-evans/create-issue-from-file@v5 37 | with: 38 | title: 'Vim help : number of untranslated lines diff status' 39 | content-filepath: ./doc_info.md 40 | issue-number: 968 41 | # issue-number: if removed, create new issue/if define issue num, update numbered issue. 42 | -------------------------------------------------------------------------------- /.github/workflows/reviewdog.yml: -------------------------------------------------------------------------------- 1 | name: reviewdog 2 | on: pull_request 3 | permissions: 4 | pull-requests: write 5 | 6 | jobs: 7 | nvcheck: 8 | name: runner / nvcheck 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: Checkout 12 | uses: actions/checkout@v4 13 | with: 14 | submodules: true 15 | - name: nvcheck-github-pr-review 16 | uses: ./.github/actions/vimhelp-nvcheck/ 17 | with: 18 | github_token: ${{ secrets.github_token }} 19 | reporter: github-pr-review 20 | level: error 21 | fail_on_error: true 22 | 23 | # on: [push, pull_request] 24 | # - name: nvcheck-github-check 25 | # uses: ./.github/actions/vimhelp-nvcheck/ 26 | # with: 27 | # github_token: ${{ secrets.github_token }} 28 | # reporter: github-check 29 | # 30 | # if need mix setting, limit push/pull_request 31 | # if: github.event_name != 'pull_request' 32 | # if: github.event_name == 'pull_request' 33 | # 34 | # on: pull_request 35 | # - name: nvcheck-github-pr-check 36 | # uses: ./.github/actions/vimhelp-nvcheck/ 37 | # with: 38 | # github_token: ${{ secrets.github_token }} 39 | # reporter: github-pr-check 40 | # 41 | # - name: nvcheck-github-pr-review 42 | # uses: ./.github/actions/vimhelp-nvcheck/ 43 | # with: 44 | # github_token: ${{ secrets.github_token }} 45 | # reporter: github-pr-review 46 | -------------------------------------------------------------------------------- /.github/workflows/vimhelptagcheck.yml: -------------------------------------------------------------------------------- 1 | name: "vim help tag name check" 2 | on: [push, pull_request] 3 | 4 | jobs: 5 | tagname: 6 | name: Check tag name conflict 7 | runs-on: ubuntu-latest 8 | steps: 9 | - name: checkout 10 | uses: actions/checkout@v4 11 | - name: help tag check 12 | uses: tsuyoshicho/action-vimhelp-tagname-check@v1 13 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /_gh-pages/ 2 | /_master/ 3 | doc/tags-ja 4 | target 5 | tmp 6 | *.sw? 7 | *~ 8 | doc_info.md 9 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: all check replace html clean 2 | 3 | all: 4 | 5 | check: 6 | nvcheck doc/*.jax vim_faq/*.jax 7 | vim -eu tools/maketags.vim 8 | 9 | replace: 10 | nvcheck -i doc/*.jax vim_faq/*.jax 11 | 12 | html: 13 | rm -rf target/html 14 | mkdir -p target/html/doc 15 | cp doc/*.jax vim_faq/*.jax target/html/doc 16 | -cd target/html/doc ; vim -eu ../../../tools/buildhtml.vim -c "qall!" 17 | 18 | clean: 19 | rm -rf target 20 | -------------------------------------------------------------------------------- /README-dist.md: -------------------------------------------------------------------------------- 1 | # vimdoc-ja 2 | 3 | [![Generate vim help](https://github.com/vim-jp/vimdoc-ja-working/actions/workflows/generate.yml/badge.svg)](https://github.com/vim-jp/vimdoc-ja-working/actions/workflows/generate.yml) 4 | [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/vim-jp/vimdoc-ja) 5 | 6 | 日本語に翻訳した Vim 付属のヘルプを配布するためのプロジェクトです。 7 | 8 | 詳しい利用方法については [wiki](https://github.com/vim-jp/vimdoc-ja/wiki) を参照してください。 9 | 10 | HTML 版は から参照することができます。 11 | また において本ヘルプの内容について AI へ質問することができます。 12 | 13 | 間違いを見つけた場合、issue トラッカーかメーリングリストでお知らせください。 14 | 15 | - issue トラッカー 16 | - メーリングリスト 17 | 18 | 翻訳作業に協力していただける方は をご覧ください。 19 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # vimdoc-ja-working 2 | 3 | [![Build Status](https://travis-ci.com/vim-jp/vimdoc-ja-working.svg?branch=master)](https://travis-ci.com/github/vim-jp/vimdoc-ja-working) 4 | 5 | Vim 付属のヘルプを日本語に翻訳するためのプロジェクトです。 6 | 7 | ## ヘルプを利用したい 8 | 9 | 配布専用の[ページ](https://github.com/vim-jp/vimdoc-ja)にアクセスしてください! 10 | 11 | ## ヘルプの翻訳に協力したい 12 | 13 | 作業手順については [wiki](https://github.com/vim-jp/vimdoc-ja-working/wiki) をご覧ください。 14 | 15 | 間違いを見付けた場合、[issueトラッカー](https://github.com/vim-jp/vimdoc-ja-working/issues) でお知らせください。プルリクエストも大歓迎です。 16 | 17 | GitHub のアカウントをお持ちでない場合は、次の方法による連絡も可能です。 18 | 19 | - メーリングリスト 20 | 21 | ### 姉妹プロジェクトがあります! 22 | 23 | Vim 本体のメッセージ、GUIメニュー、チュートリアル、man ファイルなどの日本語訳については [vim-jp/lang-ja](https://github.com/vim-jp/lang-ja) でやっています。お気軽にどうぞ。 24 | 25 | ## 注意事項 26 | 27 | README-dist.md は vim-jp/vimdoc-ja の README.md として配布されます。 28 | 内容を変更する際はそれに相応しい変更であるよう留意してください。 29 | -------------------------------------------------------------------------------- /doc/debug.jax: -------------------------------------------------------------------------------- 1 | *debug.txt* For Vim バージョン 9.1. Last change: 2024 May 11 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | Vim のデバッグ *debug-vim* 8 | 9 | これは、Vim 自体が正しく動作しない場合にデバッグするためのものである。 10 | Vim script や関数などのデバッグについては、|debug-scripts| を参照。 11 | 12 | 1. gcc と gdb を使ってクラッシュの場所を特定する |debug-gcc| 13 | 2. メモリリークの特定 |debug-leaks| 14 | 3. Windows でのバグレポート |debug-win32| 15 | 16 | ============================================================================== 17 | 18 | 1. gcc と gdb を使ってクラッシュの場所を特定する *debug-gcc* *gdb* 19 | 20 | Vim がテストファイルの 1 つでクラッシュし、コンパイルに gcc を使用している場 21 | 合、Vim がどこでクラッシュするかを正確に見つけるためにできることがある。これは 22 | MingW ツールを使用している場合にも当てはまる。 23 | 24 | 1. "-g" オプション付きで Vim をコンパイル (src/Makefile にそのための行があるの 25 | で、それをコメントアウトする)。さらに "strip" を無効化する (strip をインス 26 | トールしないか、"STRIP = /bin/true" の行を使う)。 27 | 28 | 2. 次のコマンドを実行する ("11" の所を失敗したテストの番号に変える): > 29 | cd testdir 30 | gdb ../vim 31 | run -u unix.vim -U NONE -s dotest.in test11.in 32 | 33 | 3. Vim のクラッシュを確認する。gdb は関連するメッセージを表示するはずである。 34 | 35 | 4. 次のコマンドでスタックトレースを表示できる: > 36 | where 37 | < 次のコマンドで別の場所のスタックトレースを表示できる: > 38 | frame 3 39 | < "3" をスタックトレース内の番号の 1 つに置き換える。 40 | 41 | ============================================================================== 42 | 43 | 2. メモリリークの特定 *debug-leaks* *valgrind* 44 | 45 | Linux を使っていて Vim がメモリリークしていると思われる場合は、メモリリークを 46 | 正確に特定するのに valgrind ツールが非常に役立つ。 47 | 48 | まず、EXITFREE を定義して Vim をビルドする。MAKEFILE でこれを検索して、行のコ 49 | メントを外す。 50 | 51 | 次のコマンドで Vim を起動する: 52 | > 53 | valgrind --log-file=valgrind.log --leak-check=full ./vim 54 | 55 | Note: Vim の実行はとても遅くなる。.vimrc が大きかったり多くのプラグインを入れ 56 | ていたりすると起動にとても時間がかかるので、その場合は "--clean" 引数を指定し 57 | て起動する。 58 | 59 | ライブラリがメモリリークを起こしている場合もよくある。例えば getpwuid() や 60 | XtVaAppCreateShell() など。それらを避けることはできない。リークしているバイト 61 | 数は数キロバイト以下のはずである。 62 | 63 | ============================================================================== 64 | 65 | 3. Windows でのバグレポート *debug-win32* 66 | 67 | Windows版の Vim が再現可能な手段でクラッシュした場合、次の方法で有用なバグレ 68 | ポートを作成できる。 69 | 70 | 3.1 一般事項 ~ 71 | 72 | 実行可能ファイルに対応したデバッグシンボルファイル (PDB) を取得する必要がある。 73 | gvim.exe には gvim.pdb、vim.exe には vim.pdb が必要である。あなたが実行可能ファ 74 | イルを入手したのと同じ場所に用意されているはずである。EXE に対応した (同じ日付 75 | の) PDB でなければならない。 76 | 77 | Microsoft Visual C++ コンパイラを使って自分で実行可能ファイルを作成した場合は、 78 | PDB は EXE と一緒に作成されている。 79 | 80 | Visual Studio を持っている場合、VC Toolkit と WinDbg の代わりにそれを使用する。 81 | 82 | 他のコンパイラを使っている場合は、それぞれ適切なデバッガを使用する必要がある。 83 | Cygwin または MinGW のコンパイラ用の gdb (上記参照 |debug-gcc|) など。 84 | 85 | 86 | *debug-vs2005* 87 | 3.2 Visual Studio 2005/Visual C++ 2005 Express で Vim をデバッグする ~ 88 | 89 | 最初に、vim.exe か gvim.exe を起動し、Visual Studio を起動する。(Visual Studio 90 | を持っていない場合は、|get-ms-debuggers| の説明に従って、無料の Visual C++ 91 | 2005 Express Edition を入手する。) 92 | 93 | メニューから「ツール/プロセスにアタッチ」を選択し、Vim のプロセスを選択する。 94 | 95 | そして、Vim を操作してクラッシュを再現する。「ハンドルされていない例外が発生し 96 | ました」という Visual Studio のダイアログが表示されるので、中断ボタンをクリッ 97 | クしてプロセスを中断する。 98 | 99 | シンボルが読み込めず、ソースコードを表示できなかったときは、もう 1 つダイアロ 100 | グが表示される。OK をクリックする。 101 | 102 | ウィンドウがいくつか開く。呼び出し履歴ウィンドウの右クリックメニューから「シン 103 | ボルの読み込み」を選択する。シンボル検索ダイアログが開くので、(g)vim.pdb のあ 104 | るディレクトリを選択する。 105 | 106 | このとき、呼び出し履歴ウィンドウには Vim の関数名や行番号が表示されているはず 107 | である。どれかをダブルクリックするとソースの検索ダイアログが表示される。Vim の 108 | ソースがあるディレクトリを選択する (ソースがあれば)。 109 | 110 | さらに詳しくデバッグする方法が分からないときは、":help bug-reports" の説明に 111 | 従う。バグレポートに呼び出し履歴を貼り付ける。 112 | 113 | 有料版の Visual Studio を使っている場合は、デバッグメニューから minidump を保 114 | 存できるので、それをバグレポートに添付する。minidump は 100KB 以下の小さなファ 115 | イルで、Vim のプロセスに関する情報が入っている。 116 | Visual C++ 2005 Express Edition では minidump を保存できない。just-in-time デ 117 | バッガ (クラッシュを検出して自動的に起動されるデバッガ) もインストールされな 118 | い。それらが必要なときは WinDbg (|debug-windbg|) を使う。 119 | 120 | *debug-windbg* 121 | 3.3 WinDbg を使って Vim をデバッグする ~ 122 | 123 | WinDbg の入手方法は |get-ms-debuggers| を参照。 124 | 125 | Visual Studio IDE を使うのと同じように、WinDbg から Vim のプロセスにアタッチで 126 | きる。プログラムがクラッシュしたときに、事後分析デバッガ (postmortem debugger) 127 | として、WinDebug を自動的に起動することができる。事後分析デバッガとして WinDeb 128 | を設定するには "windbg -I" を実行する。 129 | 130 | WinDbg から、実行中の Vim のプロセスにアタッチするには、WinDeb を起動し、File 131 | メニューから「プロセスにアタッチ」を選択し、Vim のプロセスを選択して OK をク 132 | リックする。 133 | 134 | メニューから「File->Symbol File Path」を選択し、Vim PDB の入っているフォルダを 135 | symbolpath に追加する。Vim のソースファイルもある場合は、File メニューの 136 | Source File Path を使う。WinDbg でソースファイルを開いたり、ブレークポイントを 137 | 設定したりできる。Vim をクラッシュさせると、クラッシュした場所のソースファイル 138 | が WinDbg で開かれる。View メニューを使って、コールスタック、ローカル変数、 139 | ウォッチウィンドウなどを見ることができる。 140 | 141 | 事後分析デバッガとして WinDbg を使っている場合、WinDbg から Vim のプロセスにア 142 | タッチする必要はない。Vim をクラッシュさせるだけで WinDbg が自動的に起動する。 143 | 上述のように、シンボルファイルパスとソースファイルパスを設定する。 144 | 145 | minidump を保存するには、WinDbg コマンドラインで次のコマンドを入力する: > 146 | .dump vim.dmp 147 | < 148 | *debug-minidump* 149 | 3.4 Minidump を開く ~ 150 | 151 | Visual Studio か WinDbg を使って minidump を開くことができる。 152 | 153 | Visual Studio 2005 の場合: メニューから「ファイル->開く->プロジェクト/ソリュー 154 | ション」選択し、.dmp ファイルを開く。F5 キーを押してデバッガを起動する。 155 | |debug-vs2005| の指示に従って Symbol File Path を設定する。 156 | 157 | WinDbg の場合: メニューから「File->Open Crash Dump」を選択する。|debug-windbg| 158 | の指示に従って Symbol File Path を設定する。 159 | 160 | *get-ms-debuggers* 161 | 3.5 Microsoft デバッグツールの入手方法 ~ 162 | 163 | Windows 用のデバッグツールは次の場所からダウンロードできる 164 | https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools 165 | これには WinDbg デバッガが含まれている。 166 | 167 | Visual C++ 2005 Express Edition は次の場所から無料でダウンロードできる。 168 | http://msdn.microsoft.com/vstudio/express/visualC/default.aspx 169 | 170 | ========================================================================= 171 | vim:tw=78:ts=8:noet:ft=help:norl: 172 | -------------------------------------------------------------------------------- /doc/debugger.jax: -------------------------------------------------------------------------------- 1 | *debugger.txt* For Vim バージョン 9.1. Last change: 2019 Dec 21 2 | 3 | 4 | VIMリファレンスマニュアル by Gordon Prieur 5 | 6 | 7 | デバッガ支援機能 *debugger-support* 8 | 9 | これらの機能はデバッガ、統合プログラミング環境(IPE)、統合開発環境(IDE)との統合 10 | のためのものである。Vim の端末ウィンドウ内で動作するデバッガについては 11 | |terminal-debugger| を参照。 12 | 13 | 1. デバッガ機能 |debugger-features| 14 | 2. Vimのコンパイルオプション |debugger-compilation| 15 | 16 | 17 | ============================================================================== 18 | 1. デバッガ機能 *debugger-features* 19 | 20 | 以下の機能が利用できる: 21 | 22 | もう1つのコマンド入力 |alt-input| 23 | デバッグ目印 |debug-signs| 24 | デバッグソースコード強調 |debug-highlight| 25 | メッセージフッター |gui-footer| 26 | バルーンウィンドウ |balloon-eval| 27 | 28 | これらの機能はMotifバージョンのgvimで使うために特別に追加された。しかしなが 29 | ら、|alt-input| と |debug-highlight|はvimとgvimでも使用できるように書かれてい 30 | る。その他の機能は非GUIバージョンのVimでもわずかな変更で使うことができる。だ 31 | が、著者はそのような変更をしていないし、Motif GUIではないバージョンのVimではテ 32 | ストしていない。 33 | 34 | 35 | 1.1 もう1つのコマンド入力 *alt-input* 36 | 37 | Vimがデバッガと協調動作するには、最低限デバッガや外部ツールからの入力のための 38 | 接続が必要である。多くの場合は出力のための接続も必要であるがこれは絶対に必要と 39 | いうわけではない。 40 | 41 | 外部デバッガがVimにコマンドを送ることが入力接続の目的である。デバッガから送ら 42 | れるコマンドは現在のデバッグ環境や状態を表示するために充分である必要がある。 43 | 44 | 現在の実装はXツールキット(X Toolkit)の発送ループとXtAddInput()ファンクション 45 | コールを基本にしている。 46 | 47 | 48 | 1.2 デバッグ目印 *debug-signs* 49 | 50 | 多くのデバッガは小さな目印を表示したりその行を色で強調することで特定の行に印を 51 | 付ける。デバッガは|:sign|コマンドを使って(Vimに)グラフィカルな目印を設定させる 52 | ことができる。この機能の使われ方の一例は、デバッグしているプログラムの実行位置 53 | (プログラムカウンタ:PC)を表示するのにデバッガが表示する矢印に見る事ができる。 54 | 別の例ではブレークポイントを示す小さな停止記号がある。これらの視覚的な強調は 55 | ユーザーがデバッガ状態の経過を追う助けになる。 56 | 57 | この機能はデバッガ以外の用途にも使用できる。IPEはビルドエラー、検索したテキス 58 | ト、その他を強調するのに何かしらの目印を使用する。この機能は印がより高い視認性 59 | を確保するために|debug-highlight|と一緒に利用できる。 60 | 61 | デバッグ目印は|:sign|コマンドを使って定義、設置する。 62 | 63 | 64 | 1.3 デバッグソースコード強調 *debug-highlight* 65 | 66 | この機能により行に優れた強調を施すことができる。これは特定の行を目立たせること 67 | を目的としている。この強調はvimとgvim両方で動作させることができ、gvimに限り多 68 | くの場合デバッグ目印と一緒に使うことができる。唯一の例外はSun Microsystemの 69 | dttermである。dttermには目印を表示するためのスペースがある。{訳注: なので、こ 70 | れを利用する際はコンソールvimでも目印を利用可能となる} 71 | 72 | 73 | 1.4 メッセージフッター *gui-footer* 74 | 75 | メッセージフッターはデバッガやIPEからのメッセージを表示するのに使用する。また 76 | メニューやツールバーのtips(一言ヒント)を表示するのにも使用できる。GUIウィンド 77 | ウの下のフッターエリアは、Exコマンドを表示する行のさらに下に位置する。 78 | 79 | フッターエリアの表示・非表示は 'guioptions' の 'F' フラグで制御する。 80 | 81 | 82 | 1.5 バルーンウィンドウ *balloon-eval* 83 | 84 | この機能はデバッガや外部ツールに、マウスが指す位置に応じた動的な情報を表示する 85 | 機能を提供する。この機能は「Sun's Visual WorkShop」のデバッガに式の評価結果を 86 | 表示させることを目的とした。しかしながら、その他の情報を表示するのに利用できる 87 | よう、可能な限り一般的な様式で実現されている。ただし、機能は制限されている。高 88 | 度なポップアップについては |popup-window| を参照。 89 | 90 | バルーンウィンドウを使うもう1つの方法は、オプション 'balloonexpr' を使うことで 91 | ある。これは完全にユーザーが定義できる。 92 | 93 | バルーンウィンドウには幾つかの設定可能なパラメーターがある。Motifではフォント 94 | リストと色はXリソース経由で設定される(XmNballoonEvalFontList, 95 | XmNballoonEvalBackground, XmNballoonEvalForeground)。 96 | オプション 'balloondelay' はバルーンを表示するまでの遅延時間を設定する。 97 | この機能を有効にするにはオプション 'ballooneval' や 'balloonevalterm' をオンに 98 | する必要がある。 99 | 100 | バルーンウィンドウは GUI の場合 |+balloon_eval| 機能付きでコンパイルした時のみ 101 | 利用できる。端末の場合 |+balloon_eval_term| 機能が必要である。 102 | 103 | バルーンウィンドウ関数はツールバーのツールチップを表示する際にも利用されてい 104 | る。これにはオプション 'ballooneval' を設定する必要はない。しかしその他の設定 105 | はこのツールチップにも適用される。 106 | 107 | ============================================================================== 108 | 2. Vimのコンパイルオプション *debugger-compilation* 109 | 110 | デバッガ機能はSunの「Visual WorkShop Integrated Programming Environment」(ipe) 111 | と一緒に使うために加えられた。しかし、それらの機能は他のデバッガも一部もしくは 112 | 全部を使うことができるように、可能な限り一般的な様式で実現されている。 113 | 114 | 以下のコンパイル時のプリプロセッサー変数で機能の有無効を制御する: 115 | 116 | もう1つのコマンド入力 ALT_X_INPUT 117 | デバッグ目印 FEAT_SIGNS 118 | デバッグソースコード強調 FEAT_SIGNS 119 | メッセージフッター FEAT_FOOTER 120 | バルーンウィンドウ FEAT_BEVAL 121 | 122 | Sun Visual WorkShop は既に存在しないため、この製品特有のサポートは削除された。 123 | 124 | SunのNetBeansのサポートについては|netbeans|を参照。 125 | 126 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 127 | -------------------------------------------------------------------------------- /doc/farsi.jax: -------------------------------------------------------------------------------- 1 | *farsi.txt* For Vim バージョン 9.1. Last change: 2019 May 05 2 | 3 | 4 | VIMリファレンスマニュアル by Mortaza Ghassab Shiran 5 | 6 | ペルシア語マッピングと右横書き *farsi* *Farsi* 7 | 8 | 9 | *E27* 10 | Farsi(ペルシア語)のサポートはパッチ8.1.0932で削除された。その時点で時代遅れで 11 | 使われていなかった。 12 | 13 | Farsiのサポートを取り戻したい場合は、8.1のリリースで存在していた古いFarsiコー 14 | ドを確認すること。Unicode文字セットを使用してArabic(アラビア語)サポートとマー 15 | ジする必要がある。 16 | 17 | 18 | vim:tw=78:ts=8:noet:ft=help:norl: 19 | -------------------------------------------------------------------------------- /doc/ft_context.jax: -------------------------------------------------------------------------------- 1 | *ft_context.txt* For Vim バージョン 9.1. Last change: 2024 Jan 01 2 | 3 | これは ConTeXt ファイルタイププラグインのドキュメントである。 4 | 5 | NOTE: このプラグインは +vim9script が必要である。 6 | 7 | ============================================================================== 8 | ☆内容 *context.vim* *ft-context* 9 | 10 | 1. 前書き |ft-context-intro| 11 | 2. コマンド |ft-context-commands| 12 | 3. 設定 |ft-context-settings| 13 | 4. マッピング |ft-context-mappings| 14 | 15 | ============================================================================== 16 | *ft-context-intro* 17 | 前書き ~ 18 | 19 | ConTeXt は、LaTeX と同じで、TeX 上に構築されたマクロベースの組版システムである: 20 | > 21 | https://wiki.contextgarden.net 22 | https://wiki.contextgarden.net/Vim 23 | < 24 | ConTeXt プラグインは構文ハイライト、組版した ConTeXt 文章の補完とサポートを提 25 | 供する。文章を組版するのに推奨する方法は |:ConTeXt| を使うことである。これは 26 | `$PATH` 上で見付けた `mtxrun` スクリプトを動作させる。 27 | 28 | コマンドとその環境でよりきめ細かな制御をするには、`context.Typeset()` を直接使 29 | うことができる (または旧来の Vim script からは `context#Typeset()`)。例えば、 30 | `~/context` 内にインストールされているバージョンの ConTeXt の場合、以下のよう 31 | にそれを使用する関数を定義できる: 32 | > 33 | import autoload 'context.vim' 34 | 35 | def MyConTeXt() 36 | const env = {'PATH': 37 | printf("%s/context/tex/texmf--/bin:%s", $HOME, $PATH)} 38 | context.Typeset("%", env) 39 | enddef 40 | 41 | このコードは `~/.vim/after/ftplugin/context.vim` に置かれるかもしれない。そし 42 | て、カスタムコマンドを呼び出すためのマッピングを定義することができる: 43 | > 44 | nnoremap t MyConTeXt() 45 | < 46 | `context.Typeset()` は、カスタムの組版コマンドを指定するための 3 番目のオプショ 47 | ナルな引数を受け入れる。これは、パスを受け取り、コマンドをリストとして返す関数 48 | でなければならない。例えば: 49 | > 50 | def ConTeXtCustomCommand(path: string): list 51 | return ['mtxrun', '--script', 'context', '--nonstopmode', path] 52 | enddef 53 | 54 | context.ConTeXtTypeset("%", v:none, ConTeXtCustomCommand) 55 | < 56 | 大規模なプロジェクトでは、ルートドキュメントと様々な章ファイルで構成されること 57 | がよくある。章ファイルを編集する場合、ルートファイルに切り替えることなく、章 58 | ファイル上で直接 |:ConTeXt| を呼び出すと便利である。各章ファイルの先頭には、 59 | ルートファイルへの相対パスを指定する "マジック行" を追加することができる。例え 60 | ば: 61 | > 62 | % !TEX root = ../MyRoot.tex 63 | < 64 | Vim は、カレントバッファの最初の 10 行内にマジック行を検索する: 見付かった場合 65 | はカレントバッファの文書ではなく、その行で指定された文書が組版される。ルート文 66 | 書が Vim で開かれている必要はない。 67 | 68 | 補完と構文ハイライトを拡張するには、ConTeXt を使用して補助ファイル群を生成して 69 | 設定に追加する。設定が `~/.vim` にある場合は、これらのコマンドが使用できる: 70 | > 71 | mkdir -p ~/.vim/syntax/shared 72 | cd ~/.vim/syntax/shared 73 | mtxrun --script interface --vim 74 | < 75 | 最後のコマンドは以下の構文ファイルを生成する: 76 | 77 | - `context-data-context.vim`; 78 | - `context-data-interfaces.vim`; 79 | - `context-data-metafun.vim`; 80 | - `context-data-tex.vim`. 81 | 82 | 同じコマンドを使用して、これらの構文ファイルを更新できる。 83 | 84 | *ft-context-commands* 85 | コマンド ~ 86 | *:ConTeXt* 87 | カレントバッファの文書を組版するバックグラウンド |job| を開始する。このコマン 88 | ドは別バッファの文書を組版したい場合、オプションとしてバッファ名を受け入れる。 89 | 90 | *:ConTeXtLog* 91 | カレントバッファの文章ソースに対応するログファイルを編集する。 92 | 93 | *:ConTeXtJobsStatus* 94 | 現在バックグラウンドで動作しているジョブ数を表示する。 95 | 96 | *:ConTeXtStopJobs* 97 | 現在バックグラウンドで動作している ConTeXt ジョブをすべて停止する。 98 | 99 | *ft-context-settings* 100 | 設定 ~ 101 | *'b:context_ignore_makefile'* 102 | *'g:context_ignore_makefile'* 103 | |:make| で(同期的な)文章の組版が行える。Makefile が存在し、このオプションが未 104 | 設定の場合、通常の `make` が使用される。このオプションが設定されている場合は、 105 | Makefile が存在していても、代わりに `mtxrun` が呼び出される。 106 | > 107 | g:context_ignore_makefile = 0 108 | < 109 | NOTE: |:make| を使用する前に、バッファの作業ディレクトリを組版するファイルの 110 | ディレクトリに設定する。 111 | 112 | *'g:context_extra_options'* 113 | `mtxrun` に渡す追加のオプションのリスト。 114 | > 115 | g:context_extra_options = [] 116 | < 117 | *'b:context_include'* 118 | *'g:context_include'* 119 | \startGROUP と \stopGROUP の間で有効になる構文ハイライトのファイルタイプ/GROUP 120 | のペアの辞書。デフォルトでは `\startXML` と `\stopXML` の間がXMLでハイライトさ 121 | れる。 122 | > 123 | g:context_include = {'xml': 'XML'} 124 | 125 | NOTE: Lua と MetaPost は個別のブロック内では常にハイライトされる。 126 | 127 | *'g:no_context_maps'* 128 | 設定時、マッピングは定義されない。 129 | > 130 | g:no_context_maps = 0 131 | < 132 | *ft-context-mappings* 133 | マッピング ~ 134 | 135 | tp "reflow TeX paragraph"、TeX での段落を整形する。 136 | 137 | i$ "inside inline math block"、インラインの数式ブロック内 138 | 部を選択する。 139 | 140 | a$ "around inline math block"、インラインの数式ブロックを 141 | 選択する。 142 | 143 | ]] [count] セクションの開始に進む。 144 | 145 | [[ [count] セクションの開始に戻る。 146 | 147 | ][ [count] セクションの終了に進む。 148 | 149 | [] [count] セクションの終了に戻る。 150 | 151 | ]} [count] ブロックの終了 (\stop..., \setup..., 152 | \define...) に進む。 153 | 154 | [{ [count] ブロックの開始 (\start..., \setup..., 155 | \define...) に戻る。 156 | 157 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 158 | -------------------------------------------------------------------------------- /doc/ft_hare.jax: -------------------------------------------------------------------------------- 1 | *ft_hare.txt* Hare プログラミング言語のサポート 2 | 3 | ============================================================================== 4 | ☆内容 *hare* 5 | 6 | 1. 前書き |hare-intro| 7 | 2. ファイルタイププラグイン |hare-plugin| 8 | 3. 設定 |hare-settings| 9 | 10 | ============================================================================== 11 | ☆前書き *hare-intro* 12 | 13 | このプラグインは、Hare プログラミング言語に構文のハイライト、インデント、その 14 | 他の機能を提供する。Hare モジュール内の README ファイルのサポートも提供されて 15 | いるが、これは |g:filetype_haredoc| を設定して有効にする必要がある。 16 | 17 | ============================================================================== 18 | ☆ファイルタイププラグイン *hare-plugin* 19 | 20 | このプラグインは、HAREPATH 環境変数の内容を含むように 'path' の値を自動的に設 21 | 定し、|gf| などのコマンドで標準ライブラリまたはサードパーティのモジュールを直 22 | 接開くことができるようにする。HAREPATH が設定されていない場合、デフォルトで、 23 | ほとんどの Unix 系ファイルシステムの推奨パス、つまり /usr/src/hare/stdlib およ 24 | び /usr/src/hare/third-party が使用される。 25 | 26 | ============================================================================== 27 | ☆設定 *hare-settings* 28 | 29 | このプラグインは、vimrc で定義して動作を設定できる少数の変数を提供する。 30 | 31 | *g:filetype_haredoc* 32 | このプラグインは、Hare モジュールを自動的に検出し、README ファイルに "haredoc" 33 | ファイルタイプを設定できる。ヒューリスティックとして使用される再帰的ディレクト 34 | リ検索はパフォーマンスに若干の影響を与えるため、この機能はデフォルトで無効に 35 | なっており、特別にオプトインする必要がある: > 36 | let g:filetype_haredoc = 1 37 | < 38 | 検索動作を調整する方法については、|g:haredoc_search_depth| を参照。 39 | 40 | *g:hare_recommended_style* 41 | 公式の Hare スタイルガイドに従って、次のオプションがデフォルトで設定される: > 42 | setlocal noexpandtab 43 | setlocal shiftwidth=0 44 | setlocal softtabstop=0 45 | setlocal tabstop=8 46 | setlocal textwidth=80 47 | < 48 | この動作を無効にするには: > 49 | let g:hare_recommended_style = 0 50 | < 51 | *g:hare_space_error* 52 | デフォルトでは、末尾の空白文字とスペース文字が前にあるタブはエラーとしてハイラ 53 | イトされる。挿入モードでは、これは自動的にオフになる。このハイライトを完全に無 54 | 効にするには: > 55 | let g:hare_space_error = 0 56 | < 57 | *g:haredoc_search_depth* 58 | デフォルトでは、|g:filetype_haredoc| が有効な場合、カレントディレクトリとその 59 | 直下のサブディレクトリのみ Hare ファイルが検索される。最大検索深度は以下のよう 60 | に調整する: > 61 | let g:haredoc_search_depth = 2 62 | < 63 | 値 効果~ 64 | 0 カレントディレクトリのみ検索。 65 | 1 カレントディレクトリと直下のサブディレクトリを検索。 66 | 2 カレントディレクトリと 2 階層のサブディレクトリを検索。 67 | 68 | 最大検索深度は任意の整数に設定できるが、2 より大きい値を使用することは推奨され 69 | ず、ほとんどの状況で具体的なメリットは得られないだろう。 70 | 71 | ============================================================================== 72 | vim:tw=78:ts=8:noet:ft=help:norl: 73 | -------------------------------------------------------------------------------- /doc/ft_mp.jax: -------------------------------------------------------------------------------- 1 | *ft_mp.txt* For Vim バージョン 9.1. Last change: 2022 Aug 12 2 | 3 | これは METAFONT および MetaPost ファイルタイププラグインのドキュメントである。 4 | 特に指定がない限り、以下で定義されているコマンド、設定、およびマッピングは、両 5 | 方のファイルタイプに等しく適用される。 6 | 7 | NOTE: このプラグインは +vim9script が必要である。 8 | 9 | ============================================================================== 10 | ☆内容 *mp.vim* *ft-metapost* 11 | *mf.vim* *ft-metafont* 12 | 13 | 1. 前書き |ft-metapost-intro| 14 | 2. コマンド |ft-metapost-commands| 15 | 3. 設定 |ft-metapost-settings| 16 | 4. マッピング |ft-metapost-mappings| 17 | 18 | ============================================================================== 19 | *ft-metapost-intro* 20 | *ft-metafont-intro* 21 | 前書き ~ 22 | このファイルタイププラグインは、METAFONT および MetaPost 文書の編集のための、 23 | 構文の色付け、インデント、補完など幅広いサポートを提供する。 24 | 25 | METAFONT および MetaPost コードのインデントルールの定義は、構文が非常に自由度 26 | が高いため、トリッキーでやや主観的である。プラグインは、ほとんどの場合うまく機 27 | 能するいくつかのヒューリスティックを使用するが、特定のケースでは、手動で定義さ 28 | れたインデントが `gg=G` などのコマンドによって保持されるように、自動的なルール 29 | をオーバーライドしたい場合がある。 30 | 31 | これは、`%>`, `%<`, `%=` または `%!` を行に追加して、次行のインデントを明示的 32 | に制御することで実現できる。`<` と `>` 記号は何度も繰り返すことができる。例え 33 | ば、`%>>` は次行を 2 回インデントすることを意味する。もちろん、`%<` は次行をイ 34 | ンデント解除することを意味し、`%=` は次行のインデントを現在行のインデントと同 35 | じに設定し、そして、`%!` は次行のインデントが手動で設定されたものから変更され 36 | ないことを意味する。 37 | 38 | 例えば、これはシンプルなマクロのデフォルトのインデントである: 39 | > 40 | def foo = 41 | makepen( 42 | subpath(T-n,t) of r 43 | shifted .5down 44 | --subpath(t,T) of r shifted .5up -- cycle 45 | ) 46 | withcolor black 47 | enddef 48 | < 49 | 特別なコメントを追加することで、インデントを任意に調整できる: 50 | > 51 | def foo = 52 | makepen( 53 | subpath(T-n,t) of r %> 54 | shifted .5down %> 55 | --subpath(t,T) of r shifted .5up -- cycle %<<< 56 | ) 57 | withcolor black 58 | enddef 59 | < 60 | *ft-metapost-commands* 61 | コマンド ~ 62 | *:FixBeginfigs* 63 | カレントバッファの beginfig() ブロックの n 番目の図が番号 n になるようにリナン 64 | バリングする。MetaPost のみ。 65 | 66 | *ft-metapost-settings* 67 | *ft-metafont-settings* 68 | 設定 ~ 69 | *'g:mf_other_macros'* 70 | cmbase や logo 等、他のいくつかの基本的なマクロ名をハイライトする。これは、 71 | METAFONT バッファではデフォルトで 1 に設定され、MetaPost バッファではデフォル 72 | トで 0 に設定される。 73 | 74 | *'g:mf_plain_macros'* 75 | plain.mf で定義されたキーワードをハイライトする。METAFONT バッファではデフォル 76 | トで 1 に設定され、MetaPost バッファではデフォルトで 0 に設定される。 77 | 78 | *'g:mf_plain_modes'* 79 | modes.mf で定義されたキーワードをハイライトする。METAFONT バッファではデフォル 80 | トで 1 に設定され、MetaPost バッファではデフォルトで 0 に設定される。 81 | 82 | *'g:mp_close_tag'* 83 | インデントされたブロックを終了する追加のキーワードを定義する。例えば、次のよう 84 | に定義した場合: 85 | > 86 | g:mp_close_tag = ['\'] 87 | < 88 | `endfoo` で始まるすべての行は、その前行と比較してインデントが解除される。 89 | > 90 | g:mp_close_tag = [] 91 | < 92 | *'b:mp_metafun'* 93 | *'g:mp_metafun'* 94 | 1 に設定した場合、ConTeXt の MetaFun キーワードがハイライトされる。MetaPost の 95 | み。 96 | > 97 | g:mp_metafun = 0 98 | < 99 | *'g:mp_mfplain_macros'* 100 | mfplain.mp で定義されたキーワードがハイライトされる。MetaPost のみ。 101 | > 102 | g:mp_mfplain_macros = 1 103 | < 104 | *'g:mp_open_tag'* 105 | インデントされるブロックを開始する追加のキーワードを定義する。例えば、次のよう 106 | に定義した場合: 107 | > 108 | g:mp_open_tag = ['\'] 109 | < 110 | `beginfoo` に続く行はインデントされる。 111 | > 112 | g:mp_open_tag = [] 113 | < 114 | *'g:mp_other_macros'* 115 | すべての基本マクロパッケージ(boxes, rboxes, format, graph, marith, sarith, 116 | string, TEX)で定義されたキーワードをハイライトする。このオプションは、MetaPost 117 | バッファのみに影響する。 118 | > 119 | g:mp_other_macros = 1 120 | < 121 | *'g:mp_plain_macros'* 122 | plain.mp で定義されたキーワードをハイライトする。MetaPost のみ。 123 | > 124 | g:mp_plain_macros = 1 125 | < 126 | *'g:no_mp_maps'* 127 | *'g:no_mf_maps'* 128 | 設定時、対応ファイルタイプによるバッファのマッピングを一切定義しない。 129 | > 130 | g:no_mp_maps = 0 131 | g:no_mf_maps = 0 132 | < 133 | *ft-metapost-mappings* 134 | *ft-metafont-mappings* 135 | マッピング ~ 136 | 137 | ]] [count] vardef, マクロ, 図に進む。 138 | 139 | [[ [count] vardef, マクロ, 図に戻る。 140 | 141 | ][ [count] vardef, マクロ, 図の終了に進む。 142 | 143 | [] [count] vardef, マクロ, 図の終了に戻る。 144 | 145 | ]} [count] ブロックの終了(fi, endfor, endgroup)に進む。 146 | 147 | [{ [count] ブロックの開始(if, for, begingroup)に戻る。 148 | 149 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 150 | -------------------------------------------------------------------------------- /doc/ft_ps1.jax: -------------------------------------------------------------------------------- 1 | *ft_ps1.txt* Windows PowerShell 用のシンタックスプラグイン 2 | 3 | 著者: Peter Provost 4 | ライセンス: Apache 2.0 5 | URL: https://github.com/PProvost/vim-ps1 6 | 7 | ☆はじめに *ps1-syntax* 8 | 9 | このプラグインは、Windows PowerShell スクリプト、モジュール、XML 設定ファイル 10 | 用のシンタックス、インデント、ファイルタイプ検知を提供する。 11 | 12 | 13 | ☆概要 *ps1-about* 14 | 15 | 最新版の入手やバグの報告は GitHub にて: 16 | 17 | https://github.com/PProvost/vim-ps1 18 | 19 | 20 | ☆折り畳み *ps1-folding* 21 | 22 | ps1 シンタックスファイルは、スクリプトブロックとスクリプト内の電子署名に対する 23 | 構文折り畳み(|:syn-fold| 参照)を提供する。 24 | 25 | 'foldmethod' が "syntax" に設定されている場合、関数とスクリプトのブロックが折 26 | り畳まれる。無効にしたい場合は、次のコマンドを .vimrc に書くか、スクリプトを開 27 | く前に実行すること: > 28 | 29 | :let g:ps1_nofold_blocks = 1 30 | < 31 | スクリプト内の電子署名も、次を使用しない限り折り畳まれる: > 32 | 33 | :let g:ps1_nofold_sig = 1 34 | < 35 | Note: 折り畳みによりシンタックスハイライトが著しく遅くなることがある。特に巨大 36 | なファイルで顕著である。 37 | 38 | 39 | ☆コンパイラ *ps1-compiler* 40 | 41 | powershell の `:compiler` スクリプトは、|:make| が PowerShell でスクリプトを実 42 | 行するように設定する。 43 | 44 | デフォルトでは、適切な PowerShell コマンドが選択される: 利用可能なら `pwsh`、 45 | そうでなければ `powershell` である。コマンドをカスタマイズすることもできる: > 46 | 47 | :let g:ps1_makeprg_cmd = '/path/to/pwsh' 48 | < 49 | 例外の種別情報を表示するように設定するには: > 50 | 51 | :let g:ps1_efm_show_error_categories = 1 52 | < 53 | 54 | ☆キーワード検索 *ps1-keyword* 55 | 56 | PowerShell の Get-Help を利用してキーワードの検索をするには、|K| キーを押下す 57 | る。より便利にページングしたい場合は、多数の Linux ディストリビューションや 58 | macOS に同梱されているページャの `less` をインストールすること。 59 | 60 | Windows では https://chocolatey.org/packages/less/ およびこれに類似した多数の 61 | 他の配布がある。`less` は環境変数 `PATH` に含まれるディレクトリに配置する。上 62 | 記の chocolatey はこれを行う。 63 | 64 | ------------------------------------------------------------------------------ 65 | vim:ft=help: 66 | -------------------------------------------------------------------------------- /doc/ft_raku.jax: -------------------------------------------------------------------------------- 1 | *ft_raku.txt* Raku プログラミング言語ファイルタイプ 2 | 3 | *vim-raku* 4 | 5 | vim-raku はシンタックスハイライト、インデント、その他 Raku プログラムの編集の 6 | ためのサポートを提供する。 7 | 8 | 1. Raku ファイル内での Unicode の利用 |raku-unicode| 9 | 10 | ============================================================================== 11 | 1. Raku ファイル内での Unicode の利用 *raku-unicode* 12 | 13 | Unicode の記号を用いて新しい演算子を定義することは、あなたの Raku プログラムを 14 | 読み易くする良い方法である。参照: 15 | https://perl6advent.wordpress.com/2012/12/18/day-18-formulas-resistance-is-futile/ 16 | 17 | Raku は基本的な演算子については ASCII での代替定義をしているが(参照 18 | https://docs.raku.org/language/unicode_ascii )、Unicode 演算子の全範囲が使える 19 | のが望しい。あなたのオペレーティングシステムが入力環境を提供していても、Vim 組 20 | み込み機能を使うのが望しいだろう。 21 | 22 | 自然な方法でこれらの記号を Vim 内に出すにはダイグラフショートカットを使う 23 | (:help |digraphs-use|)。多くの記号が定義されており、`:digraphs` とタイプするこ 24 | とでその一覧が得られる。便利な方法として、ダイグラフの一覧をファイルに保存して 25 | それを読んでもよい。シェルからなら: > 26 | vim +'redir >/tmp/vim-digraphs-listing.txt' +digraphs +'redir END' +q 27 | 28 | 標準の Vim のダイグラフにいくつかある: 29 | << « /0 ∅ !< ≮ ~ 30 | >> » Ob ∘ !> ≯ ~ 31 | ., … 00 ∞ (C ⊂ ~ 32 | (U ∩ -: ÷ )C ⊃ ~ 33 | )U ∪ (_ ⊆ >= ≥ ~ 34 | ?= ≅ )_ ⊇ =< ≤ ~ 35 | (- ∈ ?= ≅ != ≠ ~ 36 | -) ∋ ?- ≃ ~ 37 | 38 | ギリシャ文字は '*' の後に同等のラテン文字を続ける: 39 | *p π ~ 40 | *t τ ~ 41 | *X × ~ 42 | 43 | 下付きと上付き数値は 's' と 'S' と共に: 44 | 0s ₀ 0S ⁰ ~ 45 | 1s ₁ 1S ¹ ~ 46 | 2s ₂ 9S ⁹ ~ 47 | 48 | しかし、いくつかは標準では定義されていない。それらについては ~/.vimrc ファイル 49 | にダイグラフの定義を追加することができる。 > 50 | exec 'digraph \\ ' .. char2nr('∖') 51 | exec 'digraph \< ' .. char2nr('≼') 52 | exec 'digraph \> ' .. char2nr('≽') 53 | exec 'digraph (L ' .. char2nr('⊈') 54 | exec 'digraph )L ' .. char2nr('⊉') 55 | exec 'digraph (/ ' .. char2nr('⊄') 56 | exec 'digraph )/ ' .. char2nr('⊅') 57 | exec 'digraph )/ ' .. char2nr('⊅') 58 | exec 'digraph U+ ' .. char2nr('⊎') 59 | exec 'digraph 0- ' .. char2nr('⊖') 60 | " オイラー数/ネイピア数 61 | exec 'digraph ne ' .. char2nr('𝑒') 62 | " Raku の atomic 演算子記号 63 | exec 'digraph @@ ' .. char2nr('⚛') 64 | 65 | 別の方法としては、挿入モードでの短縮入力で ASCII の演算子から同等の Unicode の 66 | 単一文字へ変換することもできる。 > 67 | iabbrev !(<) ⊄ 68 | iabbrev !(<=) ⊈ 69 | iabbrev !(>) ⊅ 70 | iabbrev !(>=) ⊉ 71 | iabbrev !(cont) ∌ 72 | iabbrev !(elem) ∉ 73 | iabbrev != ≠ 74 | iabbrev (&) ∩ 75 | iabbrev (+) ⊎ 76 | iabbrev (-) ∖ 77 | iabbrev (.) ⊍ 78 | iabbrev (<) ⊂ 79 | iabbrev (<+) ≼ 80 | iabbrev (<=) ⊆ 81 | iabbrev (>) ⊃ 82 | iabbrev (>+) ≽ 83 | iabbrev (>=) ⊇ 84 | iabbrev (\|) ∪ 85 | iabbrev (^) ⊖ 86 | iabbrev (atomic) ⚛ 87 | iabbrev (cont) ∋ 88 | iabbrev (elem) ∈ 89 | iabbrev * × 90 | iabbrev **0 ⁰ 91 | iabbrev **1 ¹ 92 | iabbrev **2 ² 93 | iabbrev **3 ³ 94 | iabbrev **4 ⁴ 95 | iabbrev **5 ⁵ 96 | iabbrev **6 ⁶ 97 | iabbrev **7 ⁷ 98 | iabbrev **8 ⁸ 99 | iabbrev **9 ⁹ 100 | iabbrev ... … 101 | iabbrev / ÷ 102 | iabbrev << « 103 | iabbrev <<[=]<< «=« 104 | iabbrev <<[=]>> «=» 105 | iabbrev <= ≤ 106 | iabbrev =~= ≅ 107 | iabbrev >= ≥ 108 | iabbrev >> » 109 | iabbrev >>[=]<< »=« 110 | iabbrev >>[=]>> »=» 111 | iabbrev Inf ∞ 112 | iabbrev atomic-add-fetch ⚛+= 113 | iabbrev atomic-assign ⚛= 114 | iabbrev atomic-fetch ⚛ 115 | iabbrev atomic-dec-fetch --⚛ 116 | iabbrev atomic-fetch-dec ⚛-- 117 | iabbrev atomic-fetch-inc ⚛++ 118 | iabbrev atomic-inc-fetch ++⚛ 119 | iabbrev atomic-sub-fetch ⚛−= 120 | iabbrev e 𝑒 121 | iabbrev o ∘ 122 | iabbrev pi π 123 | iabbrev set() ∅ 124 | iabbrev tau τ 125 | < 126 | vim:tw=78:ts=8:noet:ft=help:norl: 127 | -------------------------------------------------------------------------------- /doc/hangulin.jax: -------------------------------------------------------------------------------- 1 | *hangulin.txt* For Vim バージョン 9.1. Last change: 2019 Nov 21 2 | 3 | 4 | VIMリファレンスマニュアル by Chi-Deok Hwang and Sung-Hyun Nam 5 | 6 | 7 | *hangul* 8 | Vim には XIM (X Input Method) を使っていないユーザー向けにハングル(韓国語)のサ 9 | ポートがありました。しかし、うまく動かずメンテナンスもされていなかったため Vim 10 | 8.1.2327 で削除されました。 11 | 12 | もしこのハングルインプットメソッドを使いたい場合は Vim 8.1.2326 かそれ以前に 13 | 戻ってください。もしあなたが、このコードは有用でメンテナンスしたいと考えるなら 14 | それを元に戻すパッチを作ってください。しかし、それが UTF-8 エンコーディングで 15 | 動くようにするのが最良でしょう。 16 | 17 | 18 | vim:tw=78:ts=8:noet:ft=help:norl: 19 | -------------------------------------------------------------------------------- /doc/howto.jax: -------------------------------------------------------------------------------- 1 | *howto.txt* For Vim バージョン 9.1. Last change: 2006 Apr 02 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | How to ... *howdoi* *how-do-i* *howto* *how-to* 8 | 9 | |tutor| 始めてみよう 10 | |:quit| 終了したいな? 出られない、助けて! 11 | |initialization| Vim を初期化する 12 | |vimrc-intro| Vim script ファイル(vimrc)を書く 13 | |suspend| Vim をサスペンドする 14 | |usr_11.txt| クラッシュした後にリカバリーする 15 | |07.4| 上書きするときにバックアップファイルを作っておく 16 | 17 | |usr_07.txt| ファイルを編集する 18 | |23.4| バイナリファイルを編集する 19 | |usr_24.txt| テキストを挿入する 20 | |deleting| テキストを削除する 21 | |usr_04.txt| テキストを変更する 22 | |04.5| テキストをコピーしたり移動したりする 23 | |usr_25.txt| テキストを整形する 24 | |30.6| コメントを整形する 25 | |30.2| C のプログラムをインデントする 26 | |25.3| 自動的にインデントをセットする 27 | 28 | |usr_26.txt| コマンドを繰り返す 29 | |02.5| アンドゥとリドゥ 30 | 31 | |usr_03.txt| 動き回る 32 | |word-motions| 単語単位で移動 33 | |left-right-motions| 左右に移動 34 | |up-down-motions| 上下に移動 35 | |object-motions| オブジェクト単位で移動 36 | |various-motions| 様々な動き 37 | |object-select| オブジェクト単位で選択 38 | |'whichwrap'| 行末をまたいだ移動 39 | |'virtualedit'| テキストのないところを移動する 40 | |usr_27.txt| 検索のパターンを指定する 41 | |tags-and-searches| タグを実行し特殊な検索を行う 42 | |29.4| インクルードされるファイルを検索して変数や関数やマクロ 43 | を見つける 44 | |K| カーソルの下の単語をキーワードにしてマニュアルを読む 45 | 46 | |03.7| スクロールする 47 | |'sidescroll'| 垂直/横にスクロールする 48 | |'scrolloff'| スクロール中に常に前後に表示する行数を決める。 49 | 50 | |mode-switching| モードを変更する 51 | |04.4| ビジュアルモードを使う 52 | |'insertmode'| 挿入モードで Vim を起動する 53 | 54 | |40.1| キーをマップする 55 | |24.7| 略語(abbreviations)を作る 56 | 57 | |ins-expandtab| 挿入モードでタブをスペースに広げる 58 | |i_CTRL-R| 挿入モードでレジスタの内容を挿入する 59 | |24.3| 挿入モードで単語の補完を行う 60 | |25.1| 行が長くなりすぎる前に改行する 61 | 62 | |20.1| コマンドライン編集 63 | |20.3| コマンドライン補完 64 | |'cmdheight'| コマンドラインの高さを広げる 65 | |10.3| コマンドラインの幅を指定する 66 | |40.3| 自動的に実行されるコマンドを指定する。 67 | バッファ/ウィンドウ を 読み込む/書き込む 68 | 入る/離れる 前/後 に。 69 | 70 | |'autowrite'| 自動的に書き込む 71 | |30.1| 編集-コンパイル-編集のサイクルをスピードアップする 72 | もしくは Vim でコンパイルしてエラーを修正する 73 | 74 | |options| オプションをセットする 75 | |auto-setting| オプションを自動的にセットする 76 | |term-dependent-settings| 端末の名前によってオプションをセットする 77 | |save-settings| 設定を保存する 78 | |:quote| .vim ファイルでのコメント 79 | |'helpheight'| ヘルプのデフォルトの高さを変更する 80 | |'highlight'| さまざまなハイライティングモードをセットする 81 | |'title'| ウィンドウのタイトルをセットする 82 | |'icon'| ウィンドウのアイコンをセットする 83 | |'report'| 行を編集する毎に表示されるメッセージをやめさせる 84 | |'shortmess'| |hit-enter| プロンプトが出るのを避ける 85 | 86 | |mouse-using| Vim でマウスを使う 87 | |usr_08.txt| 複数のウィンドウとバッファを使う 88 | |gui.txt| GUI を利用する 89 | 90 | |(まだ)できません| Vim を使って夕食を取る 91 | 92 | |usr_06.txt| 構文ハイライトを有効にする 93 | |2html.vim| 色づけされたファイルを HTML に変換する 94 | |less| Vimをlessやmoreと同じように使う 95 | 96 | vim:tw=78:ts=8:noet:ft=help:norl: 97 | -------------------------------------------------------------------------------- /doc/if_ole.jax: -------------------------------------------------------------------------------- 1 | *if_ole.txt* For Vim バージョン 9.1. Last change: 2023 Nov 19 2 | 3 | 4 | VIMリファレンスマニュアル by Paul Moore 5 | 6 | 7 | VimへのOLEインターフェイス *ole-interface* 8 | 9 | 1. アクティブにする |ole-activation| 10 | 2. メソッド |ole-methods| 11 | 3. "normal" コマンド |ole-normal| 12 | 4. 登録 |ole-registration| 13 | 5. MS Visual Studioとの統合 |MSVisualStudio| 14 | 15 | {Vim が |+ole| 機能付きでコンパイルされたときのみ利用できる。 16 | src/if_ole.INSTALLを参照} 17 | 18 | 代わりにクライアント、サーバー型の通信を使うこともできる|clientserver|。 19 | 20 | ============================================================================== 21 | 1. アクティブにする *ole-activation* 22 | 23 | Vimは、あらゆるオートメーションクライアント、例えばVisual Basic、Python、 24 | Perlなどからアクセス可能な、OLEオートメーションサーバーとして振舞う。Vimアプリ 25 | ケーションの "名前" (これはOLE用語で言うところの "ProgID")は、"Vim.Application" 26 | である。 27 | 28 | したがって、Vimのインスタンスを起動する(あるいはすでに起動しているインスタンス 29 | に接続する)には、次のようなコードが用いられることになる: 30 | 31 | [Visual Basic] > 32 | Dim Vim As Object 33 | Set Vim = CreateObject("Vim.Application") 34 | 35 | [Python] > 36 | from win32com.client.dynamic import Dispatch 37 | vim = Dispatch('Vim.Application') 38 | 39 | [Perl] > 40 | use Win32::OLE; 41 | $vim = new Win32::OLE 'Vim.Application'; 42 | 43 | [C#] > 44 | // プロジェクトに Vim への参照を追加する。 45 | // COM タブを選択する。 46 | // "Vim Ole Interface 1.1 Type Library" を選択する。 47 | Vim.Vim vimobj = new Vim.Vim(); 48 | 49 | Vimは、他の一部のOLEサーバーがサポートしているような、"hidden" なOLEサーバーと 50 | しての機能をサポートしていない。クライアントがVimのインスタンスを起動する場合、 51 | そのインスタンスは即座に可視化される。単にVimインスタンスとのOLE接続を閉じるだ 52 | けでは、Vimインスタンスを終了するに十分ではない - 明確に終了コマンド(例えば、 53 | :qa!、:wqa)を実行する必要がある。 54 | 55 | ============================================================================== 56 | 2. メソッド *ole-methods* 57 | 58 | Vimはクライアントに対して4つのメソッドを公開している。 59 | 60 | *ole-sendkeys* 61 | SendKeys(keys) 一連のキー操作を実行する。 62 | 63 | このメソッドはひとつの引数、すなわちキーストロークの文字列を取る。これらのキー 64 | ストロークは、完全にキーボードから打ち込まれたもののように実行される。スペシャ 65 | ルキーは、マッピングの右側に書かれる、<...>形式の名前で与えることができる。 66 | Note: Ex "normal" コマンドの実行はサポートされていない - 以下の|ole-normal|を 67 | 見よ。 68 | 69 | 例 (Visual Basic の文法) > 70 | Vim.SendKeys "ihello" 71 | Vim.SendKeys "ma1GV4jy`a" 72 | 73 | これらの例は、Vimがノーマルモードで始まるものと仮定している。必ずノーマルモー 74 | ドにするには、一連のキーを次のように CTRL-\ CTRL-N で始めるとよい > 75 | 76 | Vim.SendKeys "ihello" 77 | 78 | CTRL-\ CTRL-N は、挿入モード、コマンドラインモードにいるとき、Vimをノーマル 79 | モードに戻す。これらはVimコマンドの途中に入れると機能しないことに注意せよ。 80 | 81 | *ole-eval* 82 | Eval(expr) 式(expr)を実行する。 83 | 84 | このメソッドはひとつの引数、Vim標準フォーマットの式、を取る(|expression|を参 85 | 照)。戻り値は、その式を評価した結果の文字列である。リスト |List| は文字列に変 86 | 換される。そのとき各要素の間に改行が挿入され、連結される。 87 | 88 | 例 (Visual Basic の文法で) > 89 | Line20 = Vim.Eval("getline(20)") 90 | Twelve = Vim.Eval("6 + 6") ' これが文字列であることに注意 91 | Font = Vim.Eval("&guifont") 92 | < 93 | *ole-setforeground* 94 | SetForeground() Vimウィンドウを最前面に持ってくる。 95 | 96 | このメソッドは引数を持たない。戻り値はない。 97 | 98 | 例 (Visual Basic の文法で) > 99 | Vim.SetForeground 100 | < 101 | 102 | *ole-gethwnd* 103 | GetHwnd() Vimのウィンドウハンドルを得る。 104 | 105 | このメソッドは引数を持たない。戻り値はVimウィンドウのウィンドウハンドルである。 106 | これはVimウィンドウに対して何かの操作を行いたい時に使う。 107 | 108 | 例 (Visual Basic の文法で) > 109 | Vim_Hwnd = Vim.GetHwnd 110 | < 111 | 112 | ============================================================================== 113 | 3. "normal" コマンド *ole-normal* 114 | 115 | VimがOLEオートメーションコマンドを処理する方法は、exコマンド :normal の実装と 116 | 統合されているため、OLEオートメーションから :normal コマンドを実行することは 117 | できない。実際に実行しようとしても失敗する、たぶん害はないと思われるが、予期 118 | しない動作をする恐れはある。 119 | 120 | この状況をトラップする現実的な方法は今のところ存在しないため、ユーザーはこの制 121 | 限に単に気をつけるようにする他ない。 122 | ============================================================================== 123 | 4. 登録 *ole-registration* *E243* 124 | 125 | VimをOLEサーバーとして動作させる前に、システムレジストリに登録する必要がある。 126 | これを行うには、Vimをひとつの引数 "-register" で実行すればよい。 127 | *-register* > 128 | gvim -register 129 | 130 | 131 | OLEサーバーが登録されていないとき、OLEをサポートしたgvimを起動すると警告ダイア 132 | ログが出る。"Yes" を選択するとレジストリに登録できる。 133 | 134 | レジストリが書き込み可能でないときには登録はできない。もし登録できないときは 135 | "Administrator" 権限でgvimを起動すること。 136 | 137 | いったんVimが登録されると、アプリケーションへのパスはレジストリに保存される。 138 | Vimを移動、削除、更新する前に、レジストリの項目を "-unregister" スイッチを使っ 139 | て削除する必要がある。 140 | *-unregister* > 141 | gvim -unregister 142 | 143 | OLEメカニズムは、登録されたVimの内、最初に見つけたものを使用する。Vimがすでに 144 | 実行されている場合は、そのVimが使用される。OLEコマンドに影響されないで、(いく 145 | つかの)Vimセッションを張ろうとする場合は、非OLEバージョンを違うディレクトリに 146 | 置いて使用するとよい。そして、OLEバージョンをパスに含まれないディレクトリに置 147 | けば、"gvim" とタイプしたとき非OLEバージョンが起動するようになる。 148 | 149 | *-silent* 150 | 結果を表示するメッセージボックスを表示したくないなら "-silent" を付けること。 > 151 | gvim -silent -register 152 | gvim -silent -unregister 153 | 154 | ============================================================================== 155 | 5. MS Visual Studio との統合 *MSVisualStudio* 156 | 157 | 旧来の "VisVim" 統合は Vim のパッチ 9.0.0698 にて削除された。 158 | 159 | 160 | Vim と Visual Studio.Net を連携させる~ 161 | 162 | .Net studio は外部エディタをサポートしている。次のようにするとよい: 163 | 164 | .Net Studio でメニューから[ツール]→[外部ツール]を選択する。 165 | 次を追加する 166 | タイトル - Vim 167 | コマンド - c:\vim\vim63\gvim.exe 168 | 引数 - --servername VS_NET --remote-silent "+call cursor($(CurLine), $(CurCol))" $(ItemPath) 169 | 初期ディレクトリ - 空 170 | 171 | こうしておくと .Net でファイルを開いたとき、.Net のメニューから[ツール]→[Vim] 172 | を選べるようになる。 173 | 174 | それを選ぶとそのファイルが Vim で開かれる。 175 | この外部コマンドをアイコンにして好きなところに置くことができる。これをデフォル 176 | トのエディタに設定することもできる。 177 | 178 | もしこれをさらに改良できたら、それを留めておけるように Vim メーリングリストに 179 | 投稿していただきたい。 180 | 181 | --servername VS_NET 182 | この引数をつけると、VS_NET という名前で新しい Vim インスタンスを作る。そのため、 183 | VS で複数のファイルを開いても、同じ Vim のインスタンスが使われる。これによって 184 | 複数の Vim のインスタンスを起動し、かつどのインスタンスが VS のファイルを開い 185 | ているかを管理することができる。 186 | 187 | --remote-silent "+call cursor(10, 27)" 188 | - カーソルを10行27桁に移動する 189 | より詳しくは Vim 内で > 190 | :h --remote-silent 191 | 192 | [.Net の部分は Dave Fishburn と Brian Sturk によって提供された] 193 | 194 | ============================================================================== 195 | vim:tw=78:ts=8:noet:ft=help:norl: 196 | -------------------------------------------------------------------------------- /doc/if_sniff.jax: -------------------------------------------------------------------------------- 1 | *if_sniff.txt* For Vim バージョン 9.1. Last change: 2016 Feb 27 2 | 3 | 4 | VIMリファレンスマニュアル 5 | by Anton Leherbauer (toni@takefive.co.at) 6 | 7 | 8 | SNiFF+ サポートはパッチ 7.4.1433 で削除された。もし調べたいのなら、そのパッチ 9 | より前に同期すること。 10 | 11 | vim:tw=78:ts=8:noet:ft=help:norl: 12 | -------------------------------------------------------------------------------- /doc/os_390.jax: -------------------------------------------------------------------------------- 1 | *os_390.txt* For Vim バージョン 9.1. Last change: 2019 Dec 07 2 | 3 | 4 | VIMリファレンスマニュアル by Ralf Schandl 5 | 6 | *zOS* *z/OS* *OS390* *os390* *MVS* 7 | このファイルには z/OS Unix 上の Vim についての事項が書かれている。 8 | 9 | 1. ASCII/EBCDIC 依存のスクリプト |zOS-has-ebcdic| 10 | 2. Putty と色 |zOS-PuTTY| 11 | 3. Motif の問題 |zOS-Motif| 12 | 4. バグ |zOS-Bugs| 13 | 5. 制限事項 |zOS-limitations| 14 | 6. z/OS UNIX 上のオープンソース |zOS-open-source| 15 | 16 | 貢献者: ~ 17 | z/OS Unix への移植は Ralf Schandl によって後述の Redbook 18 | のために行われた。 19 | 20 | 以下の方々からパッチやバグレポートを戴いた: 21 | 22 | David Moore 23 | Anthony Giorgio 24 | and others 25 | 26 | ============================================================================== 27 | 1. ASCII/EBCDIC に依存のスクリプト *OS390-has-ebcdic* *zOS-has-ebcdic* 28 | 29 | Vim script 用に "ebcdic" 機能が追加された。ASCII に依存したスクリプトは、以下 30 | のようにすることで修正可能である: 31 | > 32 | if has("ebcdic") 33 | let space = 64 34 | else 35 | let space = 32 36 | endif 37 | < 38 | 39 | ============================================================================== 40 | 2. Putty と色 *OS390-PuTTY* *zOS-PuTTY* 41 | 42 | Putty を使って z/OS に接続したときに、構文強調表示やスクリーンの表示が乱れるよ 43 | うな問題が発生した場合は、次の手順を試してみてください: 44 | 45 | - Putty を "vt220" 端末として設定する (Connection->Data) 46 | - 次の三行を vimrc に追加する: 47 | 48 | > 49 | set t_AB=[4%p1%dm 50 | set t_AF=[3%p1%dm 51 | set t_CO=8 52 | < 53 | 54 | Note:  は一文字で、 を使って入力できる。 55 | 56 | ============================================================================== 57 | 3. Motifの問題 *OS390-Motif* *zOS-Motif* 58 | 59 | Note: Vim 6.* で確認。その後は未テスト。 60 | 61 | Motif ライブラリの z/OS への移植において、プルダウンメニューのアクセラレータ文 62 | 字を EBCDIC から ASCII への変換することが忘れられているように思える。 63 | 手動で変換するように試してみたが、メニューを開くところ (ファイルメニューを開く 64 | ) までしか働かず、メニュー項目を選択すること (ファイルブラウザーを開く 65 | O) はできない。 66 | 67 | まだ解決法が見つかっていない。 68 | 69 | ============================================================================== 70 | 4. バグ *OS390-bugs* *zOS-Bugs* 71 | 72 | - ビジュアルブロックモードで長大なテキストを選択すると常にハングする。これはメ 73 | モリ破壊による可能性がある。ターミナルと GUI 版両方で起きる。 74 | 75 | ============================================================================== 76 | 5. 制限事項 *OS390-limitations* *zOS-limitations* 77 | 78 | - タグファイルには二分探索を使っていない 79 | /bin/sort はデフォルトで ASCII の値を使って並べ替えを行う。このプログラムは 80 | tags を並べ替えるのに ctag により通常使われている。いつかはそれを正しく扱え 81 | る ctags がリリースされるかもしれないが、いつになるかはわからない。もしかし 82 | たら永遠にリリースされないかもしれないし… 83 | 84 | - 著者のメインフレーム上で使っている cscope のバージョンでは、cscope インター 85 | フェイス(|cscope|)は動作しない。著者が使っているのはバージョン 15.0b12 で、 86 | これを使って Vim でコマンド "cscope add" を実行すると、Vim がハングする。 87 | cscope のデータベースのバイナリフォーマットが Vim が期待するものと異なるの 88 | ではないかと推測している。cscope の現在のバージョン(15.3)を z/OS へ移植しよ 89 | うとしたが、うまくいっていない。興味のある方がおられたら、何か進展があったと 90 | きは著者にご連絡ください。 91 | 92 | - glib/gtk はサポートしていない。著者は z/OS UNIX 上で glib をコンパイルするこ 93 | とはできなかった。そのため、すてきな gtk ツールバーなしで生きていかねばなら 94 | ない。 95 | 96 | コンパイル時に無効化される機能: 97 | - マルチバイトサポート (|multibyte|) 98 | - 右横書きモード (|rileft|) 99 | - ペルシア語キーマップ (|Farsi|) 100 | - アラビア語サポート (|Arabic|) 101 | - スペルチェック (|spell|) 102 | 103 | テストされていない機能: 104 | - Perl インターフェイス (|perl|) 105 | - ハングル文字入力 (|hangul|) 106 | - 暗号化サポート (|encryption|) 107 | - Langmap (|'langmap'|) 108 | - Python インターフェイス (|Python|) 109 | - "右左" 書きモード (|'rightleft'|) 110 | - TCL インターフェイス (|tcl|) 111 | .... 112 | 113 | ============================================================================== 114 | 6. z/OS UNIX 上のオープンソース *OS390-open-source* *zOS-open-source* 115 | 116 | z/OS UNIX 上の他のオープンソースソフトウェアに興味があるなら、以下の Redbook 117 | を参照すること: 118 | 119 | Mike MacIsaac et al 120 | "Open Source Software for z/OS and OS/390 UNIX" 121 | IBM Form Number: SG24-5944-01 122 | ISBN: 0738424633 123 | http://www-03.ibm.com/systems/resources/servers_eserver_zseries_zos_unix_redbook_sg245944.pdf 124 | 125 | 以下も参照してください: 126 | http://www.redbooks.ibm.com 127 | http://www-03.ibm.com/systems/z/os/zos/features/unix/ 128 | http://www-03.ibm.com/systems/z/os/zos/features/unix/library/IBM+Redbooks/index.html 129 | 130 | 131 | 132 | ------------------------------------------------------------------------------ 133 | vim:tw=78:ts=8:noet:ft=help:norl: 134 | -------------------------------------------------------------------------------- /doc/os_amiga.jax: -------------------------------------------------------------------------------- 1 | *os_amiga.txt* For Vim バージョン 9.1. Last change: 2010 Aug 14 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | *Amiga* 8 | このファイルは Amiga 版の Vim 特有の事柄に関して記述されている。 9 | 下に |MorphOS| 専用のセクションもある。 10 | 11 | NOTE: Amiga 用のコードはまだソースに含まれているが、メンテナンスもテストもされ 12 | ていない。 13 | 14 | Amiga へのインストール: 15 | - "VIM:" を Vim の "doc" ディレクトリがある場所に割り当てる。help コマンドで 16 | "VIM:doc/help.txt" が検索される。$VIM 環境変数を設定してもうまく動作する。他 17 | の方法では: $VIM が使われており、定義されていないと "VIM:" が使われる。 18 | - DOS 1.3 かそれ以前では: "arp.library" を "libs:" に追加する。|+ARP| 機能を有 19 | 効にしてコンパイルしている必要がある。newcli と run が "C:" に含まれているこ 20 | とを確認する (外部コマンドを実行するため)。 21 | - "-c" を受け付ける shell (例えば、Fish disk 624 に含まれている "Csh") を "c:" 22 | か他の検索パスが通っている場所に置く (外部コマンドを実行するため)。 23 | 24 | 十分なメモリを積んでいれば、"rez csh vim" コマンドを実行し、Vim と csh を 25 | resident にすることで起動の遅さを回避することができる。"rezlib.library" を 26 | "libs:" ディレクトリに置く必要があるだろう。2.0 以下では rez version 0.5 が必 27 | 要である。 28 | 29 | ダイグラフを使わない場合は、|+digraphs| 機能を無効にして再コンパイルすることで 30 | メモリをいくらか節約することができる。他の端末で Vim を使いたい場合は TERMCAP 31 | オプション付きで再コンパイルする。Manx 5.x と SAS 6.x 付きでコンパイルされる。 32 | makefile と feature.h を参照。 33 | 34 | 構文強調がオンになっているときや、検索にネストしたワイルドカードを含めたときに 35 | Vim がクラッシュした場合、それはスタックが小さすぎる可能性がある。スタックサイ 36 | ズを大きくしてみてほしい。Vim を起動する前にシェル内で Stack コマンドを使う。 37 | workbench では Vim のアイコンを選択し、workbench の "Info" メニューを選択し、 38 | フォーム内の Stack フィールドを変更する。 39 | 40 | 異なる色を使いたい場合は、termcap コードを設定する: 41 | t_mr (反転テキスト) 42 | t_md (太字テキスト) 43 | t_me (t_mr と t_md 後の普通のテキスト) 44 | t_so (standout モード) 45 | t_se (t_so 後の普通のテキスト) 46 | t_us (下線付きテキスト) 47 | t_ue (t_us 後の普通のテキスト) 48 | t_ZH (イタリック・テキスト) 49 | t_ZR (t_ZH 後の普通のテキスト) 50 | 51 | 標準の ANSI エスケープシーケンスが使われる。コードは: 52 | 30 grey char 40 grey cell >0 grey background 0 all attributes off 53 | 31 black char 41 black cell >1 black background 1 boldface 54 | 32 white char 42 white cell >2 white background 2 faint 55 | 33 blue char 43 blue cell >3 blue background 3 italic 56 | 34 grey char 44 grey cell >4 grey background 4 underscore 57 | 35 black char 45 black cell >5 black background 7 reverse video 58 | 36 white char 46 white cell >6 white background 8 invisible 59 | 37 blue char 47 blue cell >7 blue background 60 | 61 | '>' 付きのコードは最後になければならない。cell と background の色は同じである 62 | 必要がある。コードはセミコロンで分割することで組み合わせることができる。例え 63 | ば、青い背景に白のテキストにするには: > 64 | :set t_me=^V[0;32;43;>3m 65 | :set t_se=^V[0;32;43;>3m 66 | :set t_ue=^V[0;32;43;>3m 67 | :set t_ZR=^V[0;32;43;>3m 68 | :set t_md=^V[1;32;43;>3m 69 | :set t_mr=^V[7;32;43;>3m 70 | :set t_so=^V[0;31;43;>3m 71 | :set t_us=^V[4;32;43;>3m 72 | :set t_ZH=^V[3;32;43;>3m 73 | 74 | 複数のコマンドをフィルターコマンドとして使う場合、例えば: > 75 | :r! echo this; echo that 76 | では、最後のコマンドの出力のみが使われる。この問題を回避するには、コマンドをグ 77 | ループにする必要がある。そして、これは使っている shell に依存している (このた 78 | め、Vim では自動的に行わない)。例: > 79 | :r! (echo this; echo that) 80 | :r! {echo this; echo that} 81 | 82 | 1 つのファイル名のみを受け付けるコマンドではファイル名にスペースが使われていて 83 | も構わない。しかしながら、複数のファイル名を引数として受け付けるコマンドでは、 84 | 埋め込まれたスペースをバックスラッシュでエスケープする必要がある。 85 | 86 | ------------------------------------------------------------------------------ 87 | Vim for MorphOS *MorphOS* 88 | 89 | [このセクションの大部分は Ali Akcaagac による] 90 | 91 | MorphOS 版についての最新情報は: 92 | http://www.akcaagac.com/index_vim.html 93 | 94 | 95 | 問題 ~ 96 | 97 | MorphOS ではなく Vim や UN*X に関連した問題が 2 つある。ram {訳注: RAM ディス 98 | ク?} 内の Vim を起動すると MorphOS は小煩い requester {訳注: ダイアログ or メッ 99 | セージボックス?} を出していろいろと不満を言うが、それは無視してほしい。別の問 100 | 題は、普通に Vim を起動するといくつかのプラグインが無視できるような問題を起こ 101 | す。いつか誰かが直してくれることを願う。 102 | 103 | とりあえずこれらの問題には目をつむり、次のように起動するか: 104 | 105 | vim <編集するファイル> 106 | 107 | もしくは、このヘルプの意向を享受し、質素に Vim を起動したい場合は、次のように 108 | すると良い: 109 | 110 | vim --noplugin <もちろんファイルを指定することもできる> 111 | 112 | 113 | インストール ~ 114 | 115 | 1) 'VIM' バイナリを c: にコピーする 116 | 2) Vim のランタイムパッケージを次から入手する 117 | 118 | ftp://ftp.vim.org/pub/vim/amiga/vim62rt.tgz 119 | 120 | そしてそれを MorphOS がインストールされている場所の 'Apps' ディレクトリに 121 | 展開する。私の場合は次のような階層になっている: 122 | 123 | MorphOS:Apps/Vim/Vim62/... 124 | 125 | 3) s:shell-startup に次の行を加える (重要!)。 126 | 127 | ;Begin VIM 128 | Set VIM=MorphOS:Apps/Vim/Vim62 129 | Assign HOME: "" 130 | ;End VIM 131 | 132 | 4) '.vimrc' ファイルを s: にコピーする。 133 | 134 | 5) アーカイブには 'color-sequence' というファイルも含まれている。これは 135 | MorphOS のシェルで ANSI カラーを表示するようにする。このファイルを s: にコ 136 | ピーし s:shell-startup を以下のように変更する: 137 | 138 | ;Begin VIM 139 | Set VIM=MorphOS:Apps/Vim/Vim62 140 | Assign HOME: "" 141 | Execute S:Color-Sequence 142 | Cls 143 | ;End VIM 144 | 145 | 146 | vim:tw=78:ts=8:noet:ft=help:norl: 147 | -------------------------------------------------------------------------------- /doc/os_beos.jax: -------------------------------------------------------------------------------- 1 | *os_beos.txt* For Vim バージョン 9.1. Last change: 2020 Jun 07 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | *beos* *BeOS* *BeBox* 8 | このファイルはBeOS向けVimについての詳細を記載するために利用されていた。 9 | 10 | BeOSのサポートは 8.2.0849 にて削除された。 11 | 12 | 13 | vim:tw=78:ts=8:noet:ft=help:norl: 14 | -------------------------------------------------------------------------------- /doc/os_mac.jax: -------------------------------------------------------------------------------- 1 | *os_mac.txt* For Vim バージョン 9.1. Last change: 2024 Nov 14 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | *mac* *Mac* *macintosh* *Macintosh* 8 | 9 | このファイルには、Macintosh 版 Vim の特殊性が記述されている。 10 | 11 | NOTE: このファイルは少し古くなっている。ここにより役立つ情報が見つかるかもしれ 12 | ない: 13 | http://macvim.org/ 14 | 15 | 1. ファイル名の規則 |mac-filename| 16 | 2. .vimrc と .vim ファイル |mac-vimfile| 17 | 3. 標準のマップ |mac-standard-mappings| 18 | 4. FAQ |mac-faq| 19 | 5. 知られている不足事項 |mac-lack| 20 | 6. Mac バグレポート |mac-bug| 21 | 7. Vim のコンパイル |mac-compile| 22 | 8. Darwin 機能 |mac-darwin-feature| 23 | 24 | Vim のバージョン 3.0 には Mac 移植版があった。以下は古いファイルの最初の数行で 25 | ある: 26 | 27 | VIM Release Notes 28 | Initial Macintosh release, VIM version 3.0 29 | 19 October 1994 30 | 31 | Eric Fischer 32 | , , 33 | 5759 N. Guilford Ave 34 | Indianapolis IN 46220 USA 35 | 36 | ============================================================================== 37 | 1. ファイル名の規則 *mac-filename* 38 | 39 | Vim バージョン 7 以降では、Vim で Unix パス区切り文字をそのまま使用できる。指 40 | 定されたファイル名がカレントフォルダに対する相対パスか絶対パス (つまり、 41 | "Desktop" に対して相対的) であるかを判断するために、次のアルゴリズムが使用され 42 | る: 43 | 44 | パスが "/" で始まる場合は、絶対パス 45 | パスが ":" で始まる場合は、相対パス 46 | パスが "/" でも ":" でも始まらず、"/" より前に ":" が見つかった場合は、 47 | 絶対パス 48 | > 49 | :e /HD/text 50 | :e HD:text 51 | < ディスク "HD" のファイル "text" を編集。 > 52 | :e :src:main.c 53 | :e src/main.c 54 | < カレントフォルダのフォルダ "src" 内のファイル "main.c" を編集。 > 55 | e os_mac.c 56 | < カレントフォルダのファイル "os_mac.c" を編集。 57 | 58 | |$VIM| および |$VIMRUNTIME| 変数を使用できる。 > 59 | 60 | so $VIMRUNTIME:syntax:syntax.vim 61 | 62 | ============================================================================== 63 | 2. .vimrc と .vim ファイル *mac-vimfile* 64 | 65 | Vim script には Unix スタイルの行区切りを使用することが推奨されており、単一の 66 | 改行文字 (LF) を使用する。 67 | 68 | Vim を起動すると $VIMRUNTIME/macmap.vim スクリプトが読み込まれ、デフォルトのコ 69 | マンドキーのマップが定義される。 70 | 71 | 古いシステムでは、ドット "." で始まるファイルは推奨されていない。そのため、rc 72 | ファイルの名前は "vimrc" または "_vimrc"、"gvimrc" または "_gvimrc" になる。こ 73 | れらのファイルは任意のフォーマット (mac, dos, unix) にすることができる。 74 | |'nocompatible'| オプションが設定されている場合は、Vim は任意のファイル形式を 75 | 扱えるが、それ以外の場合は mac 形式のファイルのみを扱う。 76 | 77 | ============================================================================== 78 | 3. 標準のマップ *mac-standard-mappings* 79 | 80 | クリップボードから/クリップボードへのカット/コピー/ペーストには、以下のマップ 81 | が使用できる。 82 | 83 | キー ノーマル ビジュアル 挿入 説明 ~ 84 | Command-v "*P "-d"*P * テキストのペースト ** 85 | Command-c "*y ビジュアルテキストのコピー ** 86 | Command-x "*d ビジュアルテキストのカット ** 87 | Backspace "*d ビジュアルテキストのカット 88 | 89 | ============================================================================== 90 | 4. Mac FAQ *mac-faq* 91 | 92 | インターネット上: http://macvim.org/OSX/index.php#FAQ 93 | 94 | Q: Apple ターミナルで非 ASCII 文字を入力できない。 95 | A: [ウィンドウ設定] → [エミュレーション] で「非 ASCII 文字をエスケープする」 96 | のチェックを外す。 97 | 98 | Q: コマンドラインから GUI の Vim を起動するには? 99 | A: Vim.app が /Applications にあると仮定すると: 100 | open /Applications/Vim.app 101 | または: 102 | /Applications/Vim.app/Contents/MacOS/Vim -g {arguments} 103 | 104 | Q: GUI または open から Vim.app を起動するときに、$PATH を適切な値に設定するに 105 | はどうすればよいか? 106 | A: 以下のトリックはほとんどのシェルで動作する。これを vimrc ファイルに記述す 107 | る。これは macvim.org で配布されているバイナリに含まれているシステム vimrc 108 | ファイルに含まれている。 > 109 | let s:path = system("echo echo VIMPATH'${PATH}' | $SHELL -l") 110 | let $PATH = matchstr(s:path, 'VIMPATH\zs.\{-}\ze\n') 111 | 112 | ============================================================================== 113 | 5. 知られている不足事項 *mac-lack* 114 | 115 | ターミナルでは CTRL-^ は Shift-Control-6 とタイプする必要がある。CTRL-@ は 116 | Shift-Control-2 である。 117 | 118 | ============================================================================== 119 | 6. Mac バグ レポート *mac-bug* 120 | 121 | Mac 版固有のバグや特性の変更を報告する場合は、vim-mac メーリングリスト 122 | |vim-mac| を使用すること。ただし、登録する必要がある。別の方法としては、Vim 123 | github リポジトリに直接問題を報告することもできる: 124 | 125 | https://github.com/vim/vim/issues 126 | 127 | または、MacVim 固有の問題についてはこちらで報告できる: 128 | 129 | https://github.com/macvim-dev/macvim/issues 130 | 131 | ============================================================================== 132 | 7. Vim のコンパイル *mac-compile* 133 | 134 | ソースファイルと一緒にある "src/INSTALLmac.txt" を参照。 135 | 136 | ============================================================================== 137 | 8. Darwin 機能 *mac-darwin-feature* 138 | 139 | とても古い Mac でなければ、Darwin とも呼ばれる OS X を使用しているはずである。 140 | Darwin の 1 つ前の OS は Mac OS 9 である。Darwin 機能は Vim が Darwin 特有の資 141 | 産を使えるようにする。 142 | 143 | この機能によって実現されるものは 2 つある: 144 | 145 | - Vim をシステムクリップボードと連携可能にする。 146 | - いくつかのプラットフォーム特有の文字エンコーディングと Vim が認識しているそ 147 | れらの差分を橋渡しする変換モジュールを Vim に組み入れる。 148 | 149 | 言うまでもなく、同じデスクトップ環境上で動く他のアプリケーションとうまく連携す 150 | るまともなテキストエディタにとって、この両方は必要不可欠なものである。 151 | 152 | Vim は macOS 専用のアプリケーションではないので、他のプラットフォーム上のユー 153 | ザーが得ているユーザー体験を macOS 上の人々にも提供するための特別な機能を追加 154 | する必要がある。 155 | 156 | 簡単のために、この特定のプラットフォームに特化した Vim の機能は "darwin" と呼 157 | ばれる。 158 | 159 | この機能は configuration のオプションである。したがって有効か無効かはビルド時 160 | に決定され、一度有効にするよう選択されると組み込まれてしまい、それゆえ実行時に 161 | 無効にすることはできない。 162 | 163 | この機能は標準で有効になっている。簡単に後述する特別なニーズでもない限り、ほと 164 | んどのユーザーにとってこれは満足のゆくものだろう。 165 | 166 | 無効にしたい場合は、configure スクリプトに `--disable-darwin` を渡す: 167 | > 168 | ./configure --disable-darwin <その他のオプション> 169 | 170 | その後 Vim をビルドするために `make` を実行する。オプションの順番は関係ない。 171 | 172 | 実行時に darwin 機能が組み込まれているかどうかを確かめるには 173 | `has('osxdarwin')` を使用することができ、機能が組み込まれている場合には 1 が返 174 | り、それ以外では 0 が返る。後方互換性のため、`osxdarwin` の代わりに `macunix` 175 | もまだ使用することができる。 176 | 177 | `--disable-darwin` が有用だと分かった着目すべきケースは次のとおり: 178 | 179 | - システムクリップボードの代わりに |x11-selection| を使用したいとき。 180 | - |x11-clientserver| を使用したいとき。 181 | 182 | どちらも適切に動作するために X11 のクライアント間通信を利用する必要があり、通 183 | 信メカニズムがシステムクリップボードと競合する可能性があるので、実行時に Vim 184 | が停止するのを防ぐため darwin 機能は無効にしておくべきである。 185 | 186 | 187 | vim:tw=78:ts=8:noet:ft=help:norl: 188 | -------------------------------------------------------------------------------- /doc/os_mint.jax: -------------------------------------------------------------------------------- 1 | *os_mint.txt* For Vim バージョン 9.1. Last change: 2020 Jul 14 2 | 3 | 4 | VIMリファレンスマニュアル by Jens M. Felderhoff 5 | 6 | 7 | *MiNT* *Atari* 8 | Atari MiNT 版のサポートはパッチ 8.2.1215 にて削除された。その時点でほぼ動作し 9 | なくなっており、コードはすでに古くなっていてメンテナンスされていなかった。 10 | 11 | 12 | オリジナル版追加: Jens M. Felderhoff, e-mail: 13 | 14 | 15 | vim:tw=78:ts=8:noet:ft=help:norl: 16 | -------------------------------------------------------------------------------- /doc/os_msdos.jax: -------------------------------------------------------------------------------- 1 | *os_msdos.txt* For Vim バージョン 9.1. Last change: 2016 Feb 26 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | *msdos* *ms-dos* *MSDOS* *MS-DOS* 8 | このファイルはVimのMS-DOSバージョンに関する特記事項を記述していた。MS-DOSサ 9 | ポートはパッチ7.4.1399で削除された。もしもMS-DOSでVimを使いたいのならば、それ 10 | よりも古いバージョンを取得する必要があるだろう。しかしながらMS-DOSバージョン 11 | は、メモリが不十分なために動作しないことに留意して欲しい。(DJGPPを使った) 12 | DOS32バージョンならば、古いシステムでも動くかもしれない。 13 | 14 | 15 | vim:tw=78:ts=8:noet:ft=help:norl: 16 | -------------------------------------------------------------------------------- /doc/os_os2.jax: -------------------------------------------------------------------------------- 1 | *os_os2.txt* For Vim バージョン 9.1. Last change: 2015 Dec 31 2 | 3 | 4 | VIMリファレンスマニュアル by Paul Slootman 5 | 6 | 7 | *os2* *OS2* *OS/2* 8 | このファイルには以前VimのOS/2バージョンの詳細が含まれていた。 9 | 10 | OS/2 サポートはパッチ 7.4.1008 で削除された。 11 | 12 | 13 | vim:tw=78:ts=8:noet:ft=help:norl: 14 | -------------------------------------------------------------------------------- /doc/os_qnx.jax: -------------------------------------------------------------------------------- 1 | *os_qnx.txt* For Vim バージョン 9.1. Last change: 2005 Mar 29 2 | 3 | 4 | VIMリファレンスマニュアル by Julian Kinraid 5 | 6 | 7 | *QNX* *qnx* 8 | 9 | 1. 概要 |qnx-general| 10 | 2. Vimをコンパイルする |qnx-compiling| 11 | 3. 端末サポート |qnx-terminal| 12 | 4. Photon GUI |photon-gui| 13 | 5. Photon フォント |photon-fonts| 14 | 6. バグと今後の予定 15 | 16 | ============================================================================== 17 | 18 | 1. 概要 *qnx-general* 19 | 20 | QNX上のVimはほとんどUNIXと同じように動作する。 |os_unix.txt| 21 | 22 | 23 | 2. Vimをコンパイルする *qnx-compiling* 24 | 25 | Vimは標準的なconfigure/makeのやり方でコンパイルすることができる。X11を使ってコ 26 | ンパイルしたいならば、configure にオプション --with-x を渡す。そうではなく 27 | ./configure に引数を渡さない場合や、--enable-gui=photon を渡した場合には、 28 | Photon GUIをサポートする。その他の有/無効を指定できる機能については 29 | ./configure --help を実行することで知ることができる。 30 | 31 | 32 | 3. 端末サポート *qnx-terminal* 33 | 34 | Vimはコンパイル時にオプションが指定されれば、ptermでのマウスとクリップをサポー 35 | トしている。通常そのオプションは指定される。 36 | 37 | マウスのサポートに関わるオプションには |'mouse'| と |'ttymouse'| がある。マウ 38 | スを使用時には、単純に左右のボタンのクリックとダブルクリックのみがサポートされ 39 | る。マウス使用中に, , を押下状態にすると、ptermはマウスを自 40 | 分で解釈してしまう。その結果、範囲選択が成されるが、これはVimが行うのそれとは 41 | 本質的に異なったものである。 42 | 43 | マウス使用時にはでptermのメニューを開くことができる。vim側でマ 44 | ウスを無効にするには、オプション |'mouse'| を空に設定する: > 45 | :set mouse= 46 | 47 | 48 | 4. Photon GUI *photon-gui* 49 | 50 | GUIのVimを起動するには、gvimかvim -gを実行する。そうでなければ端末版が起動す 51 | る。詳細な情報は - |gui-x11-start| 52 | 53 | サポートされる機能: 54 | :browse コマンド |:browse| 55 | :confirm コマンド |:confirm| 56 | カーソルの点滅 |'guicursor'| 57 | メニュー |:menu| 58 | ポップアップメニュー |popup-menu| 59 | メニューの優先順位 |menu-priority| 60 | ツールバー |gui-toolbar| 61 | |'toolbar'| 62 | フォント選択ダイアログ (:set guifont=*) |photon-fonts| 63 | マウスフォーカス |'mousefocus'| 64 | マウスカーソルを隠す |'mousehide'| 65 | マウスカーソルの形 |'mouseshape'| 66 | クリップボード |gui-clipboard| 67 | 68 | 未完成の機能: 69 | 様々な国際化のサポート、アラビア語やヘブライ語のサポート、 70 | エンコードのサポート、その他諸々。 71 | 72 | このヘルプファイル 73 | 74 | サポートされていない機能: 75 | 検索/置換ウィンドウ |:promptfind| 76 | 切り取りメニュー 77 | 78 | このリストに書こうとさえ思いつかない、だから書けない他のもの。 79 | 80 | 81 | 5. Photon フォント *photon-fonts* 82 | 83 | オプション 'guifont' でGUIのフォントを設定する: > 84 | :set guifont=Lucida\ Terminal 85 | < 86 | 指定するフォントは等幅でなければならず、フォント名の中の空白文字は '\' でエス 87 | ケープする必要がある。PC端末で使われるデフォルトのフォントサイズは8である。 88 | フォント名に '*' を使用すると、フォント選択のためにPhotonの標準的なフォント選 89 | 択ダイアログが開く。 90 | 91 | フォント名に続いて、フォントのサイズとスタイルを制御するための補助設定を含める 92 | ことができる。各補助設定は ':' で区切る。フォントが全てが、全部のスタイルをサ 93 | ポートしているわけではない。 94 | 95 | 補助設定: 96 | s{size} フォントのサイズを{size}に設定する。 97 | b 太字 98 | a アンチエイリアス(縁が滑らかになる) 99 | i 斜体 100 | 101 | 例:: 102 | 103 | monospaceフォントをサイズ10のアンチエイリアスで > 104 | :set guifont=monospace:s10:a 105 | < 106 | Courierフォントをサイズ12の太字 + 斜体で > 107 | :set guifont=Courier:s12:b:i 108 | < 109 | ダイアログでフォントを選択する > 110 | :set guifont=* 111 | < 112 | 113 | 114 | 6. バグと今後の予定 115 | 116 | 既知の問題: 117 | - 外部プログラムを実行すると時々Vimがハングする。回避方法: 118 | 次の行を|vimrc|ファイルに追加する: > 119 | set noguipty 120 | 121 | Bugs: 122 | - メニューの強調にまだ少し問題がある 123 | - phiditto/phinows/その他などの、太字をサポートしていないフォントを使 124 | 用すると、Vimが太字テキストを描画しようとした時に失敗してしまう。 125 | {訳注: phidittoやphinowsはフォント名だと推測される} 126 | - カーソルが時々、見え難くなる。 127 | - 修正可能な相当数の一般的でない問題 128 | 129 | Todo: 130 | - 多言語対応を進める 131 | - メニューとツールバーで使用されるフォントを設定するオプション 132 | - 検索と置換のダイアログ 133 | - クライアントサーバー通信の機能 134 | - 切り取りメニュー(予定) 135 | 136 | - 外部コマンドの実行をfork()からspawn()に切換える。 137 | 138 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 139 | -------------------------------------------------------------------------------- /doc/os_risc.jax: -------------------------------------------------------------------------------- 1 | *os_risc.txt* For Vim バージョン 9.1. Last change: 2011 May 10 2 | 3 | 4 | VIMリファレンスマニュアル by Thomas Leonard 5 | 6 | 7 | *riscos* *RISCOS* *RISC-OS* 8 | RISC OS サポートはパッチ 7.3.187 によって削除されました。 9 | RISC OS で Vim を使いたい場合はそのパッチ以前のファイルを取得してください。 10 | 11 | vim:tw=78:ts=8:noet:ft=help:norl: 12 | -------------------------------------------------------------------------------- /doc/os_unix.jax: -------------------------------------------------------------------------------- 1 | *os_unix.txt* For Vim バージョン 9.1. Last change: 2022 Nov 25 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | *unix* *Unix* 7 | このファイルは Unix のバージョンの Vim で特殊な事柄について書いてある。 8 | 9 | Vim を Unix でコンパイルするには src ディレクトリにある "INSTALL" と 10 | "Makefile" を参照。 11 | 12 | デフォルトのヘルプファイルの名前は "/usr/local/lib/vim/help.txt" である。 13 | "s:.vimrc" と "s:.exrc" の代わりに "$HOME/.vimrc" と "$HOME/.exrc" が使われる。 14 | さらに "/usr/local/etc/vimrc" が初めに使われる。"/usr/local/share" があれば 15 | "/usr/local/lib" の代わりにそちらが使われる。 16 | 17 | (フィルターを実行するときに使われる) 一時的なファイルは "/tmp" に置かれる。他 18 | の場所に置きたければ $TMPDIR 環境変数を自分の好みの場所に設定すること。 19 | 20 | ワイルドカード展開と '~' (ホームディレクトリ)と '$' (環境変数)を使うことがで 21 | る。 22 | 23 | *fork* *spoon* 24 | 可能であれば fork()/exec() が外部コマンドの実行に使われる、そうでない場合は 25 | もう少し遅い system() が使われる。fork()/exec() が使われる場合は |+fork| が、 26 | system() が使われる場合は |+system()| が ":version" コマンドの出力に含まれる。 27 | これはコンパイルするときに変更することができる。 28 | (GUI バージョンのフォークに関しては |gui-fork| を参照) 29 | 30 | Unix では歴史的経緯で端末の更新が遅いことが予想されるので (例: シリアルライン端 31 | 末、suntools でのシェルウィンドウ)、'showcmd' と 'ruler' オプションはオフをデ 32 | フォルトにしてある。速い端末を使っているのであれば、以下の設定を試して欲しい: > 33 | set showcmd ruler 34 | 35 | Vim を xterm 上で使っている場合 'mouse' オプションを "a" にセットすることで 36 | Vim でマウスクリックを使うことができるようになる。X-server へのアクセスがあれ 37 | ば GUI スタイルのコピー/ペーストが使用できる。そしてマウスをドラッグしている間 38 | ビジュアルなフィードバックが得られるようになる。まだ xterm でのマウスを使って 39 | のコピー/ペーストを行いたい場合は、マウスを使うときに Shift キーを押すこと。 40 | |mouse-using| を参照。十分に新しい xterm を使っていれば 'ttymouse' オプション 41 | を通してドラッグする間にビジュアルなフィードバックを得られる。 42 | 43 | *terminal-colors* 44 | Vim で色を使う場合は次のような例を使うことができる (端末が色をサポートしてはい 45 | るが "T_Co" が空かゼロの場合): > 46 | :set t_me=^[[0;1;36m " ノーマルモード(t_mr と t_md を消す) 47 | :set t_mr=^[[0;1;33;44m " 反転表示モードオン 48 | :set t_md=^[[1;33;41m " 太字表示モードオン 49 | :set t_se=^[[1;36;40m " 強調表示モードから抜ける 50 | :set t_so=^[[1;32;45m " 強調表示モード開始 51 | :set t_ue=^[[0;1;36m " 下線モードから抜ける 52 | :set t_us=^[[1;32m " 下線モード開始 53 | [ ^[ は で入力するには CTRL-V とタイプする] 54 | 55 | 本物の色端末では ":highlight" コマンドを使うこともできる。 56 | 57 | "tools/vim132" ファイルは Vim を vt100 もしくはそれによく似た端末上で 132 カラ 58 | ムモードで使うためのシェルスクリプトである。 59 | 60 | vim:tw=78:ts=8:noet:ft=help:norl: 61 | -------------------------------------------------------------------------------- /doc/pi_gzip.jax: -------------------------------------------------------------------------------- 1 | *pi_gzip.txt* For Vim バージョン 9.1. Last change: 2025 Mar 05 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | 圧縮されたファイルをVimで編集する *gzip* *bzip2* *compress* 8 | 9 | 1. 自動実行コマンド |gzip-autocmd| 10 | 11 | ここで説明されているのは |standard-plugin| {訳注: 標準プラグイン} である。 12 | このプラグインは 'compatible' がオフのときだけ使用できる。 13 | 変数 "loaded_gzip" を設定することでプラグインが読み込まれないようにできる: > 14 | :let loaded_gzip = 1 15 | < 16 | *g:gzip_exec* 17 | 18 | セキュリティ上の理由から、バッファを開くときに Vim が実行可能ファイルを自動的 19 | に実行しないようにすることもできる。このオプション (デフォルト: "1") を "0" に 20 | 設定すると、実行可能コマンドの実行を防止するために使用できる: > 21 | :let g:gzip_exec = 0 22 | < 23 | 24 | ============================================================================== 25 | 1. 自動実行コマンド *gzip-autocmd* 26 | 27 | このプラグインは自動実行コマンドをインストールして、以下の拡張子を持つファイル 28 | の読み書きを処理する: 29 | 30 | 拡張子 圧縮方法(コマンド) ~ 31 | *.bz2 bzip2 32 | *.bz3 bzip3 33 | *.gz gzip 34 | *.lz lzip 35 | *.lz4 lz4 36 | *.lzma lzma 37 | *.xz xz 38 | *.Z compress (Lempel-Ziv) 39 | *.zst zstd 40 | 41 | あなたが知るべきことはこれだけである。オプションはない。 42 | 43 | ファイルが伸長された後、再びファイル形式の判定処理が実行される。それにより 44 | "foo.c.gz" のようなファイルが "c" 形式のファイルとして判定される。 45 | 46 | 'patchmode' を設定している場合、設定された値は圧縮を示す拡張子の後に付けられ 47 | る。したがって、パッチモードで作成されたファイルを開くときは自動的には伸長され 48 | ない。そのファイルを伸長するにはファイル名を変更する必要があるだろう。 49 | 50 | ============================================================================== 51 | vim:tw=78:ts=8:noet:ft=help:norl: 52 | -------------------------------------------------------------------------------- /doc/pi_logipat.jax: -------------------------------------------------------------------------------- 1 | *pi_logipat.txt* 論理パターン May 01, 2019 2 | 3 | Author: Charles E. Campbell 4 | Copyright: (c) 2004-2016 by Charles E. Campbell *logiPat-copyright* 5 | The VIM LICENSE applies to LogiPat.vim and LogiPat.txt 6 | (see |copyright|) except use "LogiPat" instead of "Vim" 7 | No warranty, express or implied. Use At-Your-Own-Risk. 8 | 9 | ============================================================================== 10 | 1. 目次 *logiPat* *logiPat-contents* 11 | 12 | 1. 目次.....................: |logiPat-contents| 13 | 2. LogiPat マニュアル.......: |logiPat-manual| 14 | 3. LogiPat 使用例...........: |logiPat-examples| 15 | 4. 注意.....................: |logiPat-caveat| 16 | 5. LogiPat 変更履歴.........: |logiPat-history| 17 | 18 | ============================================================================== 19 | 2. LogiPat マニュアル *logiPat-manual* *logiPat-man* 20 | 21 | 22 | *logiPat-arg* *logiPat-input* *logiPat-pattern* *logiPat-operators* 23 | Boolean logic pattern (論理集合演算パターン) は以下によって構成される 24 | 25 | オペレータ ! = 否定 26 | | = 論理和 27 | & = 論理積 28 | グルーピング ( ... ) 29 | パターン "pattern" 30 | 31 | *logiPat-cmd* 32 | :LogiPat {boolean-logic pattern} *:LogiPat* 33 | :LogiPat は論理集合演算を引数に取るコマンドである 34 | (|logiPat-arg|)。 35 | 36 | :LP {boolean-logic pattern} *:LP* 37 | :LP は :LogiPat の省略形式コマンドである (|logiPat-cmd|)。 38 | 39 | :LPE {boolean-logic pattern} *:LPE* 40 | 検索は行わないが論理集合演算パターンから正規表現への変換を行い 41 | 画面に表示する。 42 | 43 | :LogiPatFlags {search flags} *LogiPat-flags* 44 | LogiPat は |search()| コマンドを使用する。search() に指定され 45 | るフラグを :LogiPatFlags に渡す。 46 | 47 | :LPF {search flags} *:LPF* 48 | :LPF は :LogiPatFlags の省略形式である。 49 | 50 | :let pat=LogiPat({boolean-logic pattern}) *LogiPat()* 51 | LogiPat() を直接呼び出す場合は検索は行わない。しかし論理集合演 52 | 算パターンから正規表現への変換が行われ返却される。 53 | 54 | パターン内部で " をマッチしたい場合はパターンにデリミタを用いるのでは 55 | なく 2 重にする。 56 | 57 | 58 | ============================================================================== 59 | 3. LogiPat 使用例 *logiPat-examples* 60 | 61 | LogiPat は論理集合演算を引数に取り抜き出す為の正規表現を提供する。 62 | 以下に例を列挙する: 63 | > 64 | :LogiPat "abc" 65 | < 文字列 :abc: を含む行を検索する 66 | > 67 | :LogiPat "ab""cd" 68 | < 文字列 :ab"cd: を含む行を検索する 69 | > 70 | :LogiPat !"abc" 71 | < 文字列 :abc: を含まない行を検索する 72 | > 73 | :LogiPat "abc"|"def" 74 | < 文字列 :abc: もしくは :def: のどちらかを含む行を検索する 75 | > 76 | :LogiPat !("abc"|"def") 77 | < 文字列 :abc: または :def: をどちらも含まない行を検索する 78 | > 79 | :LogiPat "abc"&"def" 80 | < 文字列 :abc: と :def: を両方含む行を検索する 81 | > 82 | :let pat= LogiPat('!"abc"') 83 | < 文字列 :abc: を含む全ての行にマッチする正規表現を返す。ダブル 84 | クォートを通常のパターンとして LogiPat へ渡すには論理集合オペ 85 | レータと区別する為にネストして渡す。 86 | 87 | 88 | ============================================================================== 89 | 4. 注意 *logiPat-caveat* 90 | 91 | "not" オペレータは脆いかもしれない。つまり、& (論理積) と | (論理和) 92 | のオペレータとの組み合わせでは、必ずしもうまく動作しない可能性がある。 93 | 期待通りにマッチさせる為には、できれば :set hls でパターンを良く試して 94 | ほしい。 95 | 96 | ============================================================================== 97 | 5. LogiPat 変更履歴 *logiPat-history* 98 | 99 | v4 Jun 22, 2015 * LogiPat has been picked up by Bram M for standard 100 | plugin distribution; hence the name change 101 | v3 Sep 25, 2006 * LP_Or() fixed; it now encapsulates its output 102 | in \%(...\) parentheses 103 | Dec 12, 2011 * |:LPE| added 104 | * "" is mapped to a single " and left inside patterns 105 | v2 May 31, 2005 * LPF and LogiPatFlags commands weren't working 106 | v1 May 23, 2005 * initial release 107 | 108 | 109 | ============================================================================== 110 | vim:tw=78:ts=8:noet:ft=help 111 | -------------------------------------------------------------------------------- /doc/pi_paren.jax: -------------------------------------------------------------------------------- 1 | *pi_paren.txt* For Vim バージョン 9.1. Last change: 2024 Nov 04 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | 対応するカッコの強調表示 *matchparen* 8 | 9 | このプラグインは標準プラグイン |standard-plugin| である。 10 | 'compatible' がオフのときだけ使用できる。 11 | 12 | "loaded_matchparen" 変数を設定することで、このプラグインの読み込みを回避でき 13 | る: > 14 | 15 | :let loaded_matchparen = 1 16 | 17 | このプラグインは自動コマンドイベントの CursorMoved、CursorMovedI、WinEnter を 18 | 使って強調表示を再設定する。 19 | 20 | *:NoMatchParen* *:DoMatchParen* 21 | このプラグインの機能を無効にするには次のコマンドを使う: > 22 | 23 | :NoMatchParen 24 | 25 | 機能を有効に戻すには次のコマンドを使う: > 26 | 27 | :DoMatchParen 28 | 29 | 強調表示には MatchParen が使われる。":highlight" コマンドを使って好きな色を設 30 | 定できる。例: > 31 | 32 | :hi MatchParen ctermbg=blue guibg=lightblue 33 | 34 | デフォルトでは、プラグインはカーソルの下の括弧とマッチする括弧の両方を、 35 | |hl-MatchParen| ハイライトグループを使用してハイライトする。これにより、カーソ 36 | ルのハイライトが MatchParen の色に置き換えられるため、カーソルが一時的に画面か 37 | ら消える場合がある。これを防ぎ、プラグインがマッチする括弧のみをハイライトし、 38 | (実質的にカーソルのスタイルを変更せずに) カーソルの下の括弧をハイライトしない 39 | ようにするには、"matchparen_disable_cursor_hl" 変数を設定する: > 40 | 41 | :let matchparen_disable_cursor_hl = 1 42 | 43 | オプション 'matchpairs' に設定されている文字が強調表示される。このオプションを 44 | 設定することで好きな文字を強調表示できる。Note 設定しても機能しない文字もある。 45 | 例えば、シングルクォートやダブルクォートのペアなどは、始点と終点が同じなので強 46 | 調表示できない。 47 | 48 | 対応するカッコを探すときには構文強調の属性が使われる。カーソル位置の文字が、文 49 | 字列やコメント以外のときは、文字列やコメントの中は無視される。名前に "string" 50 | や "comment" が含まれている構文強調アイテムはすべて、文字列やコメントとして扱 51 | われる。 52 | 53 | カーソルの移動が遅くならないように、対応するカッコの検索には次の制限がある: 54 | - ウィンドウに表示されている範囲だけ検索する。 55 | - 閉じた折り畳みがあると処理に時間がかかるので、カーソル位置から 100 行以内の 56 | 範囲だけ検索する。 57 | - 長い行が構文強調表示されていると処理に時間がかかるので、カーソル位置から 58 | 'synmaxcol' の二倍の範囲の文字だけ検索する。 59 | - 300 ミリ秒でタイムアウト (挿入モードでは 60 ミリ秒)。これは変数の 60 | "g:matchparen_timeout" と "g:matchparen_insert_timeout" を設定することで変更 61 | できる。バッファ毎に設定する場合は "b:matchparen_timeout" と 62 | "b:matchparen_insert_timeout" を設定する。 63 | 64 | |%| コマンドの動作を改善したい場合は matchit プラグインが使用できる。 65 | |matchit-install| 参照。このプラグインを使うとコメント内のカッコをスキップする 66 | こともできる。これは matchparen プラグインとの関連性はない。matchit プラグイン 67 | は matchparen とは別のメカニズムを使っている。 68 | 69 | ============================================================================== 70 | vim:tw=78:ts=8:noet:ft=help:norl: 71 | -------------------------------------------------------------------------------- /doc/pi_spec.jax: -------------------------------------------------------------------------------- 1 | *pi_spec.txt* For Vim バージョン 9.1. Last change: 2006 Apr 24 2 | 3 | by Gustavo Niemeyer ~ 4 | 5 | ここではRPMのspecファイル用のプラグインについて解説する。 6 | 7 | このプラグインを使用することでRPMのspecファイルの%changelogセクションを簡単に 8 | 更新することができる。まだセクションが存在していないならば、プラグインが作成し 9 | てくれる。既に本日分のエントリがあるのならば、プラグインは本日のエントリに新し 10 | い項目を追加する機会を与えてくれる。書式設定文字列(|spec_chglog_format|)を準備 11 | していないならば、プラグインはemailアドレスをユーザーに問い合わせ、そこから書 12 | 式文字列を構築する。 13 | 14 | 1. 使い方 |spec-how-to-use-it| 15 | 2. カスタマイズ |spec-customizing| 16 | 17 | ============================================================================== 18 | 1. 使い方 *spec-how-to-use-it* 19 | 20 | spec_chglogプラグインは以下のようなキーマップを提供する: > 21 | 22 | :map c SpecChangelog 23 | < 24 | これはspecファイルではマップローカルリーダー(デフォルトは'\')に続いて'c'を押す 25 | ことでプラグインが起動することを意味している。|spec_chglog_format|を設定してい 26 | ない場合には、プラグインはユーザーにemailアドレスを問い合わせこの編集セッション 27 | で使用する。 28 | 29 | プラグインを起動するたびに、changelogに本日分の項目が既に書かれているかを 30 | チェックする。そのようなエントリが存在すれば、新しいchangelog項目が追加され、 31 | 存在しない場合には新しいchangelogエントリが作成される。 32 | |spec_chglog_release_info|を有効化して実行した場合には、名前とバージョンとリ 33 | リースも一致するかが確認される。プラグインは充分に賢いので、パッケージリリース 34 | がアップデートされるべき時にはその旨を訊ねてくるから、ユーザーはわざわざそれを 35 | する必要はない。 36 | 37 | キーマップ定義 *spec-setting-a-map* 38 | -------------- 39 | 40 | 既に知っているように、あらゆるVimコマンド(その意味ではあらゆる事が可能)を実行 41 | するためのキーマップは簡単に定義できる。デフォルトのキーマップcが 42 | 気に入らないならば、独自のキーを設定するのも良いだろう。次はそれをファイル 43 | .vimrcで行う例で、プラグインをキーに割り当てている: 44 | > 45 | au FileType spec map SpecChangelog 46 | < 47 | NOTE: プラグインはユーザーのマッピング変更の要望を尊重するので、再設定は行わな 48 | い。 49 | 50 | このコマンドはspecファイルのバッファにのみ適用される。 51 | 52 | 53 | ============================================================================== 54 | 2. カスタマイズ *spec-customizing* 55 | 56 | 書式設定文字列 *spec_chglog_format* 57 | -------------- 58 | 59 | specファイルがどのように表示されるかは簡単にカスタマイズできる。これを行うには 60 | ファイル.vimrcで次のように変数 "spec_chglog_format" を設定する: > 61 | 62 | let spec_chglog_format = "%a %b %d %Y My Name " 63 | 64 | "%a %b %d %Y"はもっとも頻繁に使用される時刻の書式であることに注意。書式文字列 65 | を準備していなければ、SpecChangelogコマンドを最初に実行した時に、ユーザーに 66 | emailアドレスを問い合わせアドレスから自動的に|spec_chglog_format|を構築する。 67 | この方法でユーザーは一度emailアドレスを設定するだけで済む。 68 | 69 | どのような書式を使うことができるのかを知るには、strftime()関数のマニュアルペー 70 | ジを参照する。 71 | {訳注: |strftime()|も参照} 72 | 73 | 新規項目の挿入箇所 *spec_chglog_prepend* 74 | ------------------ 75 | 76 | プラグインは通常新しい%changelogエントリの項目(エントリそのものではないこと 77 | に注意)を、既に存在するものの後に挿入しようとする。変数spec_chglog_prependを設 78 | 定すれば: > 79 | 80 | let spec_chglog_prepend = 1 81 | 82 | 既に存在するものの前に新規項目を挿入するようになる。 83 | 84 | リリース情報の挿入 *spec_chglog_release_info* 85 | ------------------ 86 | 87 | 望むのならば、プラグインはchangelogエントリごとのリリース情報を自動的に挿入す 88 | ることができる。この機能を利用することの利点の1つは、最後の変更の後にリリース 89 | を更新すべきかそうでないかをコントロールできることである。パッケージのバージョ 90 | ンかリリースを更新していない時には、パッケージリリースを更新すべきならばその旨 91 | をユーザーに問い合わせてくれる。この機能を利用するには、.vimrcに次のコードを書 92 | き加える: > 93 | 94 | let spec_chglog_release_info = 1 95 | 96 | こうすれば、changelogエントリの最初の項目が次のようなものの場合に問い合わせが 97 | 発生する: > 98 | 99 | + name-1.0-1cl 100 | 101 | リリース更新機能が気に入らず、古いリリースを検出するたびに毎回"No"と答えるのに 102 | 嫌気が差したならば、次のようにして無効化できる: > 103 | 104 | let spec_chglog_never_increase_release = 1 105 | 106 | 107 | 幸運を!! 108 | 109 | vim:tw=78:ts=8:noet:ft=help:norl: 110 | -------------------------------------------------------------------------------- /doc/pi_tutor.jax: -------------------------------------------------------------------------------- 1 | *pi_tutor.txt* For Vim バージョン 9.1. Last change: 2025 May 19 2 | 3 | ☆Vim の対話的なチュートリアル *vim-tutor-mode* 4 | 5 | vim-tutor-mode は、vim およびサードパーティのプラグインの対話的なチュートリア 6 | ルを実行および作成するためのシステムを提供する。これは、古くからある 7 | `vimtutor` システムに代わるものである。 8 | 9 | 原作者: Felipe Morales 10 | 11 | ============================================================================= 12 | 1. 使用法 *vim-tutor-usage* 13 | 14 | vim-tutor-mode チュートリアルはハイパーテキストドキュメントで、リッチテキスト 15 | とリンクが含まれている。テキストの残りの部分と区別するために、リンクには下線が 16 | 引かれている。 17 | カーソルをリンクの上に置いて キーを押すか、リンクをダブルクリックする 18 | と、リンクをたどることができる。 19 | 20 | 1.1 コマンド 21 | ------------ 22 | *:Tutor* 23 | :Tutor [tutorial] チュートリアルを開く。[tutorial] のコマンドライン補完 24 | が提供されており、候補は 'runtimepath' の 25 | "tutor/" フォルダにある ".tutor" ファイルのリス 26 | トである。"vim-" で始まるチュートリアルは常に最初に表 27 | 示される。 28 | 29 | [tutorial] が指定されていない場合、コマンドは Vim の 30 | `vimtutor` チャプター 1 に相当する "vim-01-beginner" 31 | チュートリアルを開始する。 32 | 33 | 可能であれば、現在のメッセージ言語に翻訳されたチュート 34 | リアルを使用する (|v:lang|)。例えば、イタリア語のチュー 35 | トリアルの第 1 章を開くには、以下のようにする: > 36 | 37 | :lang it_IT.UTF-8 38 | :Tutor 39 | < 40 | ============================================================================= 41 | 2. チュートリアルの作成 *vim-tutor-create* 42 | 43 | vim-tutor-mode チュートリアルの作成は簡単である。使用される形式の概要について 44 | は、"tutor.tutor" ファイルを参照: > 45 | 46 | :Tutor tutor 47 | < 48 | 新しいチュートリアルは、:Tutor コマンドで検出されるように、'runtimepath' の 49 | 'tutor/' フォルダに配置する必要がある。 50 | 51 | チュートリアルを書くときは、通常のドキュメントよりもカジュアルなスタイルを使用 52 | することをお勧めする (コンテンツで必要な場合を除く)。 53 | 54 | ============================================================================= 55 | vim:tw=78:ts=8:noet:ft=help:norl: 56 | -------------------------------------------------------------------------------- /doc/rileft.jax: -------------------------------------------------------------------------------- 1 | *rileft.txt* For Vim バージョン 9.1. Last change: 2022 Oct 12 2 | 3 | 4 | VIMリファレンスマニュアル by Avner Lottem 5 | updated by Nadim Shaikli 6 | 7 | 8 | Vimにおける "右左" 書きとヘブライマッピング *rileft* 9 | 10 | 11 | これらの機能はAvner Lottemによって作成された 12 | E-mail: alottem@iil.intel.com 13 | Phone: +972-4-8307322 14 | 15 | *E26* 16 | {Vim が |+rightleft| 機能付きでコンパイルされたときのみ有効} 17 | 18 | 19 | はじめに 20 | ------------------ 21 | アラビア語、ペルシア語、ヘブライ語など、いくつかの言語では文章を右から左へ表示 22 | する。これらの言語で書かれたファイルは普通に記録され、右から左へ表示するのはグ 23 | ラフィックエンジンの機能である(Unicodeを利用して)。右左指向ファイルでは文字は 24 | 画面の右から左へ書かれる。 25 | 26 | 双方向性(Bidirectionality 略して bidi)はUnicodeがこれらの言語を扱うために提供 27 | しているものである。双方向性はユーザーが "右から左" のテキストと "左から右" の 28 | テキストを同時に同じウィンドウで適切に表示できるようにする。Vim は現在のとこ 29 | ろ、簡素でいるために、双方向性を提供していない。単に "右から左" 言語を表示、入 30 | 力、使用する機能を提供している。古い混在方法、文字単位 (または複数文字) で表示 31 | する方向を決める方法はサポートされていない。そして、この種のサポートは既存のエ 32 | ディタに簡単に加えることはできない (そしてUnicodeでも承認されていない)。 33 | 34 | 多くの人々は右から左へモードを使用しないコードで作業しており、この機能はいくつ 35 | かの場合で動作しない。不具合があって修正したらどう動作するのか説明できるなら、 36 | GitHubにIssueを作ってほしい、|bug-reports| を参照。 37 | 38 | 39 | 概要 40 | ---------- 41 | o "左右" ファイルの編集はオリジナルのVimと同じで、変更はない 42 | 43 | o "右から左" ウィンドウでファイルを閲覧、編集できる。ファイルはウィンドウ単位 44 | で指向方向を選択できるので、同じファイルを "右左" と "左右" ウィンドウで同 45 | 時に閲覧することが可能である。(これは表示方向の違う複数の言語が混在している 46 | 時に便利である) 47 | 48 | o オリジナルのVimとの互換性。ほとんど全ての機能が "右左" モードでも使用できる。 49 | (下記「バグ」の章を参照) 50 | 51 | o 反転入力モードからの復帰がファイルの正しい場所で行われる(可能な限り)。 52 | 53 | o "右左" 機能を使用するのに特別な端末を必要としない。"右左" 拡張機能は完全に 54 | ハードウェア非依存である。 55 | 56 | o たくさんの言語が "右左" 言語サポートを必要とする。このサポートに手を加え他の 57 | "右左" 言語(アラビア語など)に対応させるのは簡単だろう。文字エンコードに合わ 58 | せてキーボードマッピングを変更したり、ほんの少しコードに手を加えればいい。 59 | 現在はこれら|arabic.txt|, |farsi.txt|, |hebrew.txt|の言語サポートを含んでい 60 | る。 61 | 62 | 63 | 重要 64 | -------------- 65 | 66 | o 機能を有効にするために 67 | ----------- 68 | + 'rightleft' ('rl') ウィンドウを "右から左" 指向に設定する。 69 | + 'delcombine' ('deco')、真偽値、UTF-8 でエンコードされた言語を編集している 70 | ならば、先行する文字に重ね合わせられた合成文字を削除することを許可する(い 71 | くつかの言語ではこれが必要である)。 72 | + 'rightleftcmd' ('rlc') "右から左" 指向で便利なように、あるモード (検索な 73 | ど) のコマンドラインの入力方法を設定する。 74 | 75 | o 後方タイピング *ins-reverse* 76 | -------------- 77 | 78 | 全面的に 'rightleft' オプションを使う代わりに、もう一つ逆方向に挿入する方法 79 | がある。'revins' (逆挿入)オプションが有効になっていると、挿入した文字が後方 80 | に流れていく。"右左" 方向のテキストを入力するのに使える。キャラクタを挿入す 81 | ると、カーソルはその場から動かずテキストが右へ流れていく。はカーソルの 82 | 下の文字を削除する。CTRL-WとCTRL-Uも反対の方向へ働く。'backspace' オプショ 83 | ンが指定されているかにかかわらず、CTRL-W、CTRL-Uは入力の開始点や行末で 84 | 停止しない。 85 | 86 | (まだ)逆置換モードは実装されていない。 87 | 88 | 'showmode' オプションが設定されていると、逆挿入モードが有効になっている時 89 | には状態表示行(ステータスライン)に "-- REVERSE INSERT --" が表示されるだろ 90 | う。 91 | 92 | o "右左" ウィンドウでの貼り付け 93 | ----------------------------- 94 | 95 | マウスでカットした文章を "右左" ウィンドウに貼り付けると、"左右" バッファ 96 | からカットされたバッファの文字を "右左" ファイルへ入力することになるので、 97 | テキストは反転される。これを避けるには貼り付け前に 'revins' を切り替える。 98 | 99 | バグ 100 | ---- 101 | o "右左" ウィンドウではCTRL-AとCTRL-X(足し算、引き算)コマンドは正しく働かな 102 | い。 103 | 104 | o 逆挿入とコマンドラインでの "右左" モードはサポートされない。しかしながらマッ 105 | ピング、短縮入力、検索、コマンドラインでの "左右" 入力が可能なので、エディ 106 | タの機能性はそこなわれない 107 | 108 | o "右左" モードでは多少遅くなる。"右左" の動作は端末制御ではなくVimでのエミュ 109 | レーションによって実現されているため。 110 | 111 | o 'rightleft' と 'revins' が両方とも有効になっていると: 'textwidth' が動作し 112 | ない。行が折り返されない; 長い行が作成される。 113 | 114 | o 双方向 (bidi) を完全にはサポートしていない。 115 | 116 | 117 | vim:tw=78:ts=8:noet:ft=help:norl: 118 | -------------------------------------------------------------------------------- /doc/russian.jax: -------------------------------------------------------------------------------- 1 | *russian.txt* For Vim バージョン 9.1. Last change: 2006 Apr 24 2 | 3 | 4 | VIMリファレンスマニュアル by Vassily Ragosin 5 | 6 | 7 | ロシア語サポート *russian* *Russian* 8 | 9 | 1. はじめに |russian-intro| 10 | 2. ロシア語キーマップ |russian-keymap| 11 | 3. ローカライゼーション |russian-l18n| 12 | 4. 既知の問題 |russian-issues| 13 | 14 | =============================================================================== 15 | 1. はじめに *russian-intro* 16 | 17 | Vim ではロシア語は完璧にサポートされています。特別な設定をすることなく、他の言 18 | 語とまったく同じようにロシア語のテキストを書いたり表示したりできます。 19 | 20 | =============================================================================== 21 | 2. ロシア語キーマップ *russian-keymap* 22 | 23 | 言語を切り替えるには、システムネイティブのキーボード切り替えを使うか、Vim に含 24 | まれているロシア語キーマップのどれかを使います。例: > 25 | > 26 | :set keymap=russian-jcukenwin 27 | < 28 | 後者の方法なら、ロシア語のキーボードを持っていなくてもいいですし、システムの 29 | キーボード設定とは独立して言語を切り替えることができます。|'keymap'| を参照し 30 | てください。また、キーボードを切り替えるためのキーマップを作ることもできます。 31 | |:map| を参照してください。 32 | 33 | ノーマルモードコマンドを入力するときにキーボードを切り替えなくてすむように、オ 34 | プション 'langmap' をセットすると便利です: 35 | > 36 | :set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ;ABCDEFGHIJKLMNOPQRSTUVWXYZ, 37 | фисвуапршолдьтщзйкыегмцчня;abcdefghijklmnopqrstuvwxyz 38 | 39 | 上の行は utf-8 で書かれているので、'encoding' が utf-8 でないと読めません。読 40 | みやすいように折り返していますが、このコマンドを一行で入力してください。 41 | 42 | =============================================================================== 43 | 3. ローカライゼーション *russian-l18n* 44 | 45 | ロシア語に翻訳されたメッセージ、ヘルプファイル、メニューなどを使うには、RuVim 46 | 言語パックをインストールする必要があります。次のサイトからダウンロードできます。 47 | 48 | http://www.sourceforge.net/projects/ruvim/ 49 | 50 | 自動インストールするためには Vim 6.2.506 以上、ruvim 0.5 以上でなければなりま 51 | せん。また、ユーザーインターフェイス項目の翻訳を使うには Vim が |+gettext| 機 52 | 能つきでコンパイルされていなければなりません。 53 | 54 | RuVim プロジェクトからアーカイブをダウンロードしたら、あなたの $VIMRUNTIME ディ 55 | レクトリに展開してください。UTF-8 アーカイブを使うことを推奨します。 56 | 57 | ロシア語のドキュメントを使うには、オプション 'helplang' に "ru" をセットしてく 58 | ださい。 59 | 60 | =============================================================================== 61 | 4. 既知の問題 *russian-issues* 62 | 63 | -- Win32 のコンソールでロシア語メッセージを使っていると、"vim --help" と 64 | "vim --version" の出力、コンソールウィンドウタイトルが間違ったコードページ 65 | で表示されてしまいます。この問題は GNU gettext ライブラリのバグに関係してい 66 | て、将来の gettextでは修正されるかもしれません。 67 | 68 | =============================================================================== 69 | vim:tw=78:ts=8:noet:ft=help:norl: 70 | -------------------------------------------------------------------------------- /doc/sponsor.jax: -------------------------------------------------------------------------------- 1 | *sponsor.txt* For Vim バージョン 9.1. Last change: 2024 Aug 14 2 | 3 | 4 | VIMリファレンスマニュアル by Bram Moolenaar 5 | 6 | 7 | 8 | ☆開発支援 (スポンサー) *sponsor* 9 | 10 | バグの修正や新機能の追加には多くの時間と労力が必要である。その仕事に対するあな 11 | たの評価を形にするために、また、開発者達の Vim を開発しようとする気持ちを継続 12 | させるために、寄付をお願いしている。 13 | 14 | ご寄付いただいたお金は主にウガンダの子供達を援助するために使われる。|uganda| 15 | を参照。しかし同時に、寄付は Vim に取り組み続ける開発チームのモチ 16 | ベーションを高める! 17 | 18 | 開発支援に関する最新の情報は Vim のウェブサイトを参照。 19 | 20 | http://www.vim.org/sponsor/ 21 | 22 | |sponsor-faq| にさらに説明がある。 23 | 24 | 25 | ☆ユーザー登録 *register* 26 | 27 | 10 ユーロ以上の送金で Vim の登録ユーザーになれる。これは開発支援と似たようなも 28 | のである。上記 |sponsor| を参照。上司や帳簿係はソフトウェアに出費してくれるが、 29 | "開発支援" や "寄付"という名目では問題がある、という場合に使ってほしい。 30 | 31 | |register-faq| にさらに説明がある。 32 | 33 | 34 | ☆機能への投票 *vote-for-features* 35 | 36 | Note: 2023 年に Bram が亡くなって以来、機能への投票は中止された。次の 2 つのリ 37 | ンクはまだ機能するが、更新されなくなった。したがって、現在は 2023 年夏の時点で 38 | の歴史的なビューのみが提供されている。 39 | 40 | 投票結果は結果ページに表示され、誰でも閲覧できる: 41 | http://www.vim.org/sponsor/vote_results.php 42 | 43 | 送金額が合計で 100 ユーロを越えると、名誉の殿堂 (Vim hall of honour) にあなた 44 | の名前が載る。http://www.vim.org/sponsor/hall_of_honour.php 45 | しかしそれは、あなたが自分のアカウントページでそれを許可した場合のみである。 46 | 47 | 48 | ☆送金方法 *send-money* 49 | 50 | クレジットカード 51 | クレジットカードでの送金には PayPal を使う。詳しいことは 52 | PayPal のサイトを参照: 53 | https://www.paypal.com/ 54 | 開発支援の送金のためのメールアドレスは以下: 55 | donate@vim.org 56 | ユーザー登録のためのメールアドレスは以下: 57 | register@vim.org 58 | なるべくユーロを使って欲しいが、他の通貨も受け付けている。ヨー 59 | ロッパ在住なら銀行振込の方が手数料が安い。 60 | 61 | 他の方法 |iccf-donations| を参照。 62 | 送金するときにコメント欄に "Vim sponsor" か "Vim registration" 63 | と記入する。 64 | 65 | 66 | ☆質問と回答 *sponsor-faq* *register-faq* 67 | 68 | なぜ送金しないといけないのか? 69 | 70 | Vim に対する感謝の気持ちを示さなければ、開発チームはバグを修正したり新機能を追 71 | 加したりする意欲が減退する。彼らは代わりに何か他のことをするだろう。 72 | 73 | 74 | いくら送金すればいいのか? 75 | 76 | いくらでも良い。たくさん送金すれば、たくさんの子供達が救われる。目安としては、 77 | ホームユーザーの場合は年に 10 ユーロ、仕事で使う場合は 1 人あたり年に 30 ユー 78 | ロほど。 79 | 80 | 81 | スポンサーや登録ユーザーになるにはどうすればいいのか? 82 | 83 | 上記 |send-money| に従って送金し、メールアドレスを明記する。送金が完了すると、 84 | 登録キーが送付される。このキーを Vim ウェブサイトで使用すると、寄付したことを 85 | 他の人に表示するかどうかを選択できる追加ページが表示される。そのページへのリン 86 | クは "My Account" ページにある。 87 | 88 | 89 | 登録ユーザーとスポンサーの違いは? 90 | 91 | 名前が違うだけである。あなたの上司が "開発支援" や "寄付" を好まない場合に 92 | "ユーザー登録" という名目を使用する。特典は同じである。 93 | 94 | 95 | どうやって送金するのか? 96 | 97 | |send-money| を参照。最新情報はウェブサイトで確認: 98 | http://www.vim.org/sponsor/ 99 | 100 | 101 | なぜ SourceForge の寄付システムを使わないのか? 102 | 103 | SourceForge は寄付金の 5% を手数料として取るため。SouceForge を支援したい場合 104 | は直接彼らに送金することができる。 105 | 106 | 107 | 私には送金するほど経済的余裕がない。それでも Vim を使えるか? 108 | 109 | はい。 110 | 111 | 112 | 私はユーザー登録していない。すべての機能を使えるか? 113 | 114 | はい。 115 | 116 | 117 | バグを発見した。報告するにはユーザー登録が必要か? 118 | 119 | 必要ない。Vim をより良くするための提案はいつでも歓迎する。改良に関しては開発 120 | メーリングリスト |maillist| を使用する。バグ報告に関しては |bugs| を参照。 121 | 122 | 123 | チャリティウェアとは? 124 | 125 | 現在、Vim への寄付金は |uganda| に送金される。そのため、Vim または ICCF のどち 126 | らを支援するかは関係ない。 127 | 128 | 129 | 私は $$$ 円寄付した。XYZ の機能を加えてほしい。 130 | 131 | あなたの寄付と開発者達の作業の間には直接的な関係はない。対価が仕事に対し 132 | て支払われるとすると、私たちはその寄付に関して納税しなければならない。特定の 133 | 仕事のために開発者達を雇いたい場合は、寄付ではなく、彼らに直接連絡してほしい。 134 | 135 | 136 | 寄付金は税金控除の対象になるか? 137 | 138 | 国によって違う。|Uganda| の子供達を援助するための寄付は、オランダ、ドイツ、カ 139 | ナダ、アメリカ、で税金が控除される。ICCF のウェブサイトを参照 140 | http://iccf-holland.org/donate.html。 141 | 142 | 143 | 請求書は送付可能か? 144 | 145 | いいえ。なぜなら、寄付金と仕事の間には関係がないからである。領収書を発行するこ 146 | とは可能である。 147 | 148 | 149 | 150 | vim:tw=78:ts=8:noet:ft=help:norl: 151 | -------------------------------------------------------------------------------- /doc/usr_01.jax: -------------------------------------------------------------------------------- 1 | *usr_01.txt* For Vim バージョン 9.1. Last change: 2024 Dec 17 2 | 3 | VIM USER MANUAL - by Bram Moolenaar 4 | 5 | マニュアルについて 6 | 7 | 8 | この章では、Vim のマニュアルを紹介します。著作権についてもお読み下さい。 9 | 10 | |01.1| 2つのマニュアル 11 | |01.2| Vim の準備 12 | |01.3| チュートリアル 13 | |01.4| 著作権 (copyright) 14 | 15 | 次章: |usr_02.txt| 初めての Vim 16 | 目次: |usr_toc.txt| 17 | 18 | ============================================================================== 19 | *01.1* 2つのマニュアル 20 | 21 | Vim のマニュアルは2部構成になっています。 22 | 23 | 1. ユーザーマニュアル 24 | 簡単なものから複雑なものまで、具体的な例を使って説明しています。本のよう 25 | に最初から順を追って読んでください。 26 | 27 | 2. リファレンスマニュアル 28 | Vim がどのように動作するかを詳しく説明しています。 29 | 30 | マニュアルの表記方法については |notation| をご覧ください。 31 | 32 | 33 | ☆他のトピックへのジャンプ 34 | 35 | 2つのマニュアルにはハイパーリンクが張ってあります。編集手順の説明とコマンドや 36 | オプションの詳しい説明とを素早く行き来できます。次のコマンドを使ってください。 37 | 38 | CTRL-] : カーソル位置の項目にジャンプする。 39 | CTRL-O : ジャンプ先から戻る。 40 | 41 | リンクは |bars| のように縦線 (vertical bar) で囲まれています。縦線は隠れている 42 | か非表示になっているかもしれません (下記参照)。オプション名は 'number' のよう 43 | にアポストロフィで、コマンドは ":write" のように引用符で囲まれています。普通の 44 | 単語もリンクとして使えます。試しに、カーソルを CTRL-] の上に動かして CTRL-] を 45 | 押してみてください。 46 | 47 | ":help" コマンドでヘルプの目次を表示できます。|help.txt|をご覧ください。 48 | 49 | 縦線とスターは通常は |conceal| 機能によって隠されています。さらに、|hl-Ignore| 50 | が使用され、背景色と同じ色が設定されています。次のコマンドでそれらを表示するこ 51 | とができます: > 52 | :set conceallevel=0 53 | :hi link HelpBar Normal 54 | :hi link HelpStar Normal 55 | 56 | ============================================================================== 57 | *01.2* Vim の準備 58 | 59 | マニュアルの大部分は Vim が正しくインストールされていることを前提にしていま 60 | す。まだインストールしていなかったり、うまく動いていない (ファイルが見つからな 61 | い、GUI でメニューが出ないなどの) 場合は、インストールの章 |usr_90.txt| を読ん 62 | でください。 63 | *not-compatible* 64 | このマニュアルでは「vi互換スイッチ('compatible')」がオフになっていることを前提 65 | にしています。ほとんどのコマンドは互換スイッチの影響を受けませんが、例えば、複 66 | 数回アンドゥなどの機能を使うときは設定が重要になります。正しく設定されているこ 67 | とを確実にするには、サンプル設定ファイルをコピーするのが簡単です。Vim の中から 68 | コピーを実行するなら、サンプル設定ファイルの場所を探す必要はありません。コピー 69 | の方法はシステムによって違います: 70 | 71 | Unix: > 72 | :!cp -i $VIMRUNTIME/vimrc_example.vim ~/.vimrc 73 | MS-Windows: > 74 | :!copy $VIMRUNTIME/vimrc_example.vim $VIM/_vimrc 75 | Amiga: > 76 | :!copy $VIMRUNTIME/vimrc_example.vim $VIM/.vimrc 77 | 78 | vimrc ファイルが既にある場合はコピーする必要はないかもしれません。 79 | 80 | Vim を起動すると、オプション 'compatible' はオフになっているはずです。次のコマ 81 | ンドで現在の設定を確認できます: > 82 | 83 | :set compatible? 84 | 85 | "nocompatible" と表示されればオフになっています。"compatible" と表示された場合 86 | は正しく設定されていません。オプションがオンになっている理由を確認してくださ 87 | い。もしかしたら、先程保存した設定ファイルが読み込まれていないのかもしれませ 88 | ん。次のコマンドで確認してください: > 89 | 90 | :scriptnames 91 | 92 | ファイルが一覧に無い場合は、vimrc ファイルの名前と場所を確認してください。一覧 93 | に入っている場合は、他のファイルによって 'compatible' がオンに設定されているは 94 | ずです。 95 | 96 | 詳しくは|vimrc|と|compatible-default|をご覧ください。 97 | 98 | Note: 99 | このマニュアルはVimを普通に使うための説明書です。実は evim(=easy vim) 100 | という別の Vim があります。これも Vim なのですが、メモ帳 のように 101 | 「クリック & 入力」方式であったり、常に挿入モードであったり、普通の 102 | Vim とはかなり雰囲気が違います。このユーザーマニュアルでは evim につい 103 | て説明していません。操作方法は使えばわかるはずです。 104 | 詳しいことは |evim-keys| をご覧ください。 105 | 106 | ============================================================================== 107 | *01.3* チュートリアル *tutor* *vimtutor* 108 | 109 | 対話型 tutor については、|vim-tutor-mode| を参照 110 | 111 | テキストを読むだけではなく (退屈だし!) チュートリアルを使って Vim の初歩を学ぶ 112 | ことができます。これは 2 つの章で提供される 30 分間のチュートリアルで、最も基 113 | 本的な Vim の機能を実際に体験しながら学べます。 114 | 115 | Unix では、Vim が適切にインストールしてあれば、シェルから起動できます: > 116 | 117 | vimtutor 118 | 119 | MS-Windows では、"Program/Vim 9.1" メニューにあります。または、インストールディ 120 | レクトリから vimtutor.bat を実行します (このディレクトリを見つけるには、Vim 内 121 | から `:echo $VIMRUNTIME` が使用できます)。 122 | 123 | 演習ファイルの第 1 章のコピーが作られるので、テキストを編集してもオリジナルの 124 | 演習ファイルを壊してしまう心配はありません。第 2 章に進むには、以下のコマンド 125 | を使用できます: > 126 | vimtutor -c 2 127 | < 128 | チュートリアルはいくつかの言語に翻訳されています。翻訳されたチュートリアル 129 | を使うには、2 文字の言語コードを指定します。日本語の場合は次のようにします: > 130 | 131 | vimtutor ja 132 | 133 | Unix で GUI 版の Vim を使いたい場合は、"gvimtutor" か "vimtutor -g" を実行して 134 | ください。 135 | 136 | OpenVMS では、VMS プロンプトから次のようにして起動できます。 > 137 | 138 | @VIM:vimtutor 139 | 140 | 上の例と同じようにオプションで二文字の言語コードを指定できます。 141 | 142 | 143 | Unix 以外のシステムでは、多少の作業が必要です。 144 | 145 | 1. 演習用ファイルをコピーします。これは Vim を使ってコピーできます (Vim はファ 146 | イルの場所を知っている): 147 | > 148 | vim --clean -c 'e $VIMRUNTIME/tutor/tutor1' -c 'w! TUTORCOPY' -c 'q' 149 | < 150 | "TUTORCOPY" というファイルがカレントディレクトリに作成されます。翻訳された演習 151 | ファイルを使うには、二文字の言語コードを指定します。日本語の場合は次のようにし 152 | ます: 153 | > 154 | vim --clean -c 'e $VIMRUNTIME/tutor/tutor1.fr' -c 'w! TUTORCOPY' -c 'q' 155 | < 156 | 2. コピーしたファイルを Vim で開きます: 157 | > 158 | vim --clean TUTORCOPY 159 | < 160 | 引数 --clean は Vim をイイ感じのデフォルト設定で起動します。 161 | 162 | 3. 練習が終わったら、コピーしたファイルを削除します: 163 | > 164 | del TUTORCOPY 165 | < 166 | ============================================================================== 167 | *01.4* 著作権 (Copyright) *manual-copyright* 168 | 169 | Vim のユーザーマニュアルとリファレンスマニュアルの著作権は以下の通りです。 170 | Copyright (c) 1988 by Bram Moolenaar 171 | Open Publication License, v1.0 以降の条件に従って配布することができます。ライ 172 | センスの最新バージョンは次の場所から入手できます: 173 | https://opencontent.org/openpub/ 174 | 175 | マニュアルに貢献する人は上記の著作権通達に同意しなければなりません。 176 | 177 | *frombook* 178 | ユーザーマニュアルの一部は "Vi IMproved - VIM" から取られたものです。 179 | "Vi IMproved - Vim" Steve Oualline著 180 | (出版:New Riders Publishing, ISBN: 0735710015) 181 | この本には Open Publication License が適用されています。必要な部分のみコピー 182 | し、変更を加えています (図を削除したり、Vim 6.0 以降のために更新したり、間違い 183 | を訂正したり)。|frombook|タグが省略されていたとしても、この本からコピーしたこ 184 | とを否定するものではありません。 185 | 186 | この本を OPL で出版してくださった Steve Oualline 氏と New Riders に深く感謝し 187 | ます。ユーザーマニュアルの執筆においてとても助けられました。文章を提供しても 188 | らっただけでなく、スタイルや文体も参考にさせていただきました。 189 | 190 | このマニュアルの販売で収益を上げた方は、利益の一部を寄付してくださるようお願い 191 | します。ウガンダのエイズ患者を助けてあげてください。詳しくは|iccf|をご覧くださ 192 | い。 193 | 194 | ============================================================================== 195 | 196 | 次章: |usr_02.txt| 初めての Vim 197 | 198 | Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: 199 | -------------------------------------------------------------------------------- /doc/usr_32.jax: -------------------------------------------------------------------------------- 1 | *usr_32.txt* For Vim バージョン 9.1. Last change: 2010 Jul 20 2 | 3 | VIM USER MANUAL - by Bram Moolenaar 4 | 5 | undo ツリー 6 | 7 | 8 | Vim にはマルチレベルの undo 機能があります。変更を undo してから新しい変更を加 9 | えると、undo ツリーに枝が作成されます。このテキストでは、枝を移動する方法を説 10 | 明します。 11 | 12 | |32.1| ファイル保存時への undo 13 | |32.2| 変更の番号付け 14 | |32.3| ツリーを飛び回る 15 | |32.4| タイムトラベル 16 | 17 | 次章: |usr_40.txt| 新しいコマンドを作る 18 | 前章: |usr_31.txt| GUI の活用 19 | 目次: |usr_toc.txt| 20 | 21 | ============================================================================== 22 | *32.1* ファイル保存時への undo 23 | 24 | いくつかの変更を加えた後で、やっぱり最後にファイルを保存したときの状態に戻りた 25 | いなと思うようなことがときどきあります。そんなときは次のコマンドを使います: > 26 | 27 | :earlier 1f 28 | 29 | "f" は "file" を意味します。 30 | 31 | このコマンドを繰り返し実行してさらに過去に戻ることができます。あるいは、1 より 32 | 大きなカウント指定をすればもっと素早く過去に戻れます。 33 | 34 | 戻り過ぎてしまったときは次のコマンドで進むことができます: > 35 | 36 | :later 1f 37 | 38 | Note: このコマンドは時間を基準にして移動します。これは undo した後で何か変更を 39 | 加えていた場合に重要になってきます。それについては次の節で説明します。 40 | 41 | Note: ここではテキストの保存の話をしています。undo 情報のファイルへの保存につ 42 | いては |undo-persistence| を参照してください。 43 | 44 | ============================================================================== 45 | *32.2* 変更の番号付け 46 | 47 | セクション |02.5| では一本道の undo/redo について説明しましたが、実は、 48 | undo/redo は分岐することができます。変更を undo してから新しい変更を加えると、 49 | 新しい変更が undo ツリーの枝になります。 50 | 51 | "one" というテキストから始めましょう。最初に " too" を追加します。次に too の 52 | 一つ目の 'o' を 'w' に変更します。これで、二つの変更 (番号 1、2) と、テキスト 53 | の三つの状態ができました。 54 | 55 | one ~ 56 | | 57 | change 1 58 | | 59 | one too ~ 60 | | 61 | change 2 62 | | 63 | one two ~ 64 | 65 | 一つだけ変更を undo して "one too" の状態に戻り、"one" を "me" に変更します。 66 | すると、undo ツリーに枝が作成されます。 67 | 68 | one ~ 69 | | 70 | change 1 71 | | 72 | one too ~ 73 | / \ 74 | change 2 change 3 75 | | | 76 | one two me too ~ 77 | 78 | この状態で |u| コマンドを使って undo してみてください。二回 undo すると "one" 79 | に戻ります。|CTRL-R| で redo すると "one too" になります。もう一度 |CTRL-R| を 80 | 実行すると "me too" になります。このように、undo/redo を実行すると、最後に使わ 81 | れた枝を上下に移動できます。 82 | 83 | 重要なのは変更が作成される順番です。undo ツリーにおいては、undo と redo は変更 84 | とはみなされません。それぞれの変更の後にはテキストの新しい状態があります。 85 | 86 | Note: 変更にだけ番号が付きます。上図のツリーに示されている "テキスト" の部分に 87 | は番号が付きません。テキストは、その上の変更番号によって参照されます。ただし、 88 | ツリーを上に移動したときなどは、下の変更番号によって参照されます (どの変更が 89 | undo されたかわかるように)。 90 | {訳注: 例えば上図の "one too" から undo/redo したときのメッセージ: 91 | undo したとき: 1 change; before #1 <- 下の番号が使われる 92 | redo したとき: 1 change; after #3} 93 | 94 | ============================================================================== 95 | *32.3* ツリーを飛び回る 96 | 97 | さて、"one two" の状態を得るにはどうすればいいでしょうか。次のコマンドを使いま 98 | す: > 99 | 100 | :undo 2 101 | 102 | テキストが "one two" (change 2 の下) になります。|:undo| コマンドを使うと、指 103 | 定した変更の下にジャンプできます。 104 | 105 | 新しい変更を加えてみましょう。"one" を "not" に変更します: 106 | 107 | one ~ 108 | | 109 | change 1 110 | | 111 | one too ~ 112 | / \ 113 | change 2 change 3 114 | | | 115 | one two me too ~ 116 | | 117 | change 4 118 | | 119 | not two ~ 120 | 121 | 何か考えが変わって "me too" に戻りたくなった場合は、|g-| コマンドを使います。 122 | このコマンドは時間を基準にして戻ります。ツリーを上下に移動するのではなく、直前 123 | の変更に移動します。 124 | 125 | |g-| を繰り返し実行すると、テキストは次のように変化します: 126 | me too ~ 127 | one two ~ 128 | one too ~ 129 | one ~ 130 | 131 | |g+| を使えば時間を進めることができます: 132 | one ~ 133 | one too ~ 134 | one two ~ 135 | me too ~ 136 | not two ~ 137 | 138 | ジャンプしたい変更番号が分かっているときには |:undo| が便利です。番号がよく分 139 | からないときには |g-| と |g+| が便利です。 140 | 141 | |g-| と |g+| にカウント指定を付けると実行回数を指定できます。 142 | 143 | ============================================================================== 144 | *32.4* タイムトラベル 145 | 146 | しばらくテキストを編集すると、ツリーは大きく成長します。そのとき、数分前のテキ 147 | ストに戻りたいと思うことがあるかもしれません。 148 | 149 | undo ツリーにどのような枝があるかを確認するには次のコマンドを使います: > 150 | 151 | :undolist 152 | < number changes time ~ 153 | 3 2 16 seconds ago 154 | 4 3 5 seconds ago 155 | 156 | 枝に付いている葉の数と、変更された時間が表示されます。今、change 4 の下 ("not 157 | two") にいるとして、10 秒前に戻るには次のようにします: > 158 | 159 | :earlier 10s 160 | 161 | 指定した時間だけ戻り、ツリーの特定の位置へ移動できます。|:earlier| コマンドの 162 | 引数は "m" で分、"h" で時間、"d" で日を指定することもできます。すべての変更を 163 | 元に戻したい場合は大きな値を指定してください: > 164 | 165 | :earlier 100d 166 | 167 | 時間を進めるには |:later| コマンドを使います: > 168 | 169 | :later 1m 170 | 171 | |:earlier| と同様に、"s"、"m"、"h" で単位を指定します。 172 | 173 | undo 情報の詳細を見たい、触りたい、という場合は |undotree()| 関数を使ってくだ 174 | さい。関数が何を返すかは次のコマンドで確認できます: > 175 | 176 | :echo undotree() 177 | 178 | ============================================================================== 179 | 180 | 次章: |usr_40.txt| 新しいコマンドを作る 181 | 182 | Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: 183 | -------------------------------------------------------------------------------- /doc/usr_43.jax: -------------------------------------------------------------------------------- 1 | *usr_43.txt* For Vim バージョン 9.1. Last change: 2024 Oct 05 2 | 3 | VIM USER MANUAL - by Bram Moolenaar 4 | 5 | ファイルタイプを使う 6 | 7 | 8 | C プログラムやシェルスクリプトなどの特定の種類のファイルを編集するときに、よく 9 | 使うオプション設定やマップがあると思います。それを毎回手作業で設定するのは面倒 10 | ですよね。この章ではそれを自動化する方法を説明します。 11 | 12 | |43.1| ファイルタイププラグイン 13 | |43.2| ファイルタイプを追加する 14 | 15 | 次章: |usr_44.txt| 構文ファイルを作成する 16 | 前章: |usr_42.txt| 新しいメニューを追加する 17 | 目次: |usr_toc.txt| 18 | 19 | ============================================================================== 20 | *43.1* ファイルタイププラグイン *filetype-plugin* 21 | 22 | ファイルタイププラグインの使用方法については既に |add-filetype-plugin| で説明 23 | しました。しかし、標準では最小限の設定しかされないので、それだけでは物足りない 24 | と思います。例えば C ファイルを開いたときに、'softtabstop' オプションを 4 に設 25 | 定したり、三行コメントを挿入するためのマップを定義したりすると便利かもしれませ 26 | ん。2 ステップで設定できます。 27 | 28 | *your-runtime-dir* 29 | 1. 自分のランタイムディレクトリを作成する。Unix なら普通は "~/.vim" です。その 30 | ディレクトリの中に "ftplugin" ディレクトリを作成します: > 31 | 32 | mkdir ~/.vim 33 | mkdir ~/.vim/ftplugin 34 | < 35 | Unix 以外のシステムでは、'runtimepath' オプションを見て、"ftplugin" ディレ 36 | クトリが検索される場所を確認してください: > 37 | 38 | set runtimepath 39 | 40 | < 普通は最初のディレクトリ (最初のコンマの前) を使います。初期設定以外のディ 41 | レクトリを使いたい場合は、|vimrc| ファイルの中で 'runtimepath' オプションを 42 | 設定してディレクトリを追加してください。 43 | 44 | 2. "~/.vim/ftplugin/c.vim" を作成して設定を書きます: > 45 | 46 | setlocal softtabstop=4 47 | noremap c o/**************/ 48 | let b:undo_ftplugin = "setl softtabstop< | unmap c" 49 | 50 | そして、C ファイルを開いてみてください。'softtabstop' オプションが 4 に設定さ 51 | れていますね。しかし、他のファイルを開くと初期設定の 0 にリセットされます。そ 52 | れは ":setlocal" コマンドが使われているからです。このコマンドはバッファの 53 | 'softtabstop' オプションだけを設定します。他のバッファを開くと、開いたバッファ 54 | 用の設定が使用されます。新しいバッファの設定には、初期設定、または最後に 55 | ":set" コマンドで設定された値が使われます。 56 | 57 | 同様に、"\c" マップも他のバッファを開くと見えなくなります。":map " コ 58 | マンドを使うと、カレントバッファの中だけで使えるマップを作成できます。これは 59 | ":map!" や ":vmap" などの他のマップコマンドでも同様です。マップの中の 60 | || は "maplocalleader" 変数の値で置き換えられます。 61 | 62 | b:undo_ftplugin を設定する行はファイルタイプを別の値に設定されていたときのため 63 | に用います。このケースではあなたが望む方法でundoしたいでしょう。 64 | b:undo_ftplugin 変数はコマンドとして実行されます。そのため中の文字は、バック 65 | スラッシュのように特別な意味を持つものがあるので、気をつけてください。 66 | 67 | ファイルタイププラグインの例はこのディレクトリで探すことができます: > 68 | 69 | $VIMRUNTIME/ftplugin/ 70 | 71 | ファイルタイププラグインの作成方法の詳細は |write-plugin| を参照してください。 72 | 73 | ============================================================================== 74 | *43.2* ファイルタイプを追加する 75 | 76 | Vim がファイルタイプを認識しない場合は、設定を追加してください。まず自分用のラ 77 | ンタイムディレクトリを用意する必要があります。上述の |your-runtime-dir| を参照 78 | してください。 79 | 80 | "filetype.vim" というファイルを作成してファイルタイプ用の自動コマンドを設定し 81 | ます。(自動コマンドは |40.3| で説明されています。) 例: > 82 | 83 | augroup filetypedetect 84 | au BufNewFile,BufRead *.xyz setf xyz 85 | augroup END 86 | 87 | ファイル名が ".xyz" で終わるすべてのファイルが "xyz" ファイルタイプとして認識 88 | されるようになります。":augroup" コマンドを使って自動コマンドを 89 | "filetypedetect" グループに置いています。こうすることで、ファイルタイプを認識 90 | するための自動コマンドを ":filetype off" で削除できるようになります。"setf" コ 91 | マンドは 'filetype' を指定されたタイプに設定します。ただし、設定済みの場合は変 92 | 更しません。これによってファイルタイプが二重に設定されないようになっています。 93 | 94 | ファイル名にマッチするパターンはいろいろなものが使えます。ディレクトリ名を含め 95 | ることもできます。|autocmd-patterns| 参照。例えば、"/usr/share/scripts" にある 96 | ファイルが拡張子に関係なくすべて "ruby" ファイルであるなら、次のような設定を追 97 | 加します: > 98 | 99 | augroup filetypedetect 100 | au BufNewFile,BufRead *.xyz setf xyz 101 | au BufNewFile,BufRead /usr/share/scripts/* setf ruby 102 | augroup END 103 | 104 | しかし、/usr/share/scripts/README.txt を開いたとき、それは ruby ファイルではあ 105 | りえませんよね。"*" で終わるパターンの問題は、多くのファイルにマッチしすぎてし 106 | まうことです。この問題を避けるには、'runtimepath' の最後に指定されたディレクト 107 | リに "filetype.vim" を置きます。例えば Unix なら "~/.vim/after/filetype.vim" 108 | などです。 109 | では、~/.vim/filetype.vim にテキストファイルの検出を設定します: > 110 | 111 | augroup filetypedetect 112 | au BufNewFile,BufRead *.txt setf text 113 | augroup END 114 | 115 | このファイルは 'runtimepath' の最初に見つかります。そして、最後に見つかるファ 116 | イル "~/.vim/after/filetype.vim" の中で次の設定をします: > 117 | 118 | augroup filetypedetect 119 | au BufNewFile,BufRead /usr/share/scripts/* setf ruby 120 | augroup END 121 | 122 | 処理の流れは次のようになります。Vim は 'runtimepath' の各ディレクトリから 123 | "filetype.vim" を探します。最初に "~/.vim/filetype.vim" が見つかります。*.txt 124 | を処理する自動コマンドがここで定義されます。次に Vim は $VIMRUNTIME にある 125 | filetype.vim を見つけます ($VIMRUNTIME は 'runtimepath' の中程にあります)。最 126 | 後に ~/.vim/after/filetype.vim が見つかり、/usr/share/scripts の ruby ファイル 127 | を認識するための自動コマンドが追加されます。 128 | /usr/share/scripts/README.txt を開くと、定義された順番で自動コマンドがチェック 129 | されます。*.txt というパターンがマッチするので、"setf text" が実行され、ファイ 130 | ルタイプが "text" に設定されます。ruby 用のパターンもマッチするので、"setf 131 | ruby" が実行されます。しかし、'filetype' は既に設定されているので何も起こりま 132 | せん。 133 | /usr/share/scripts/foobar を開くと、同様に自動コマンドがチェックされます。ruby 134 | のパターンだけがマッチするので、"setf ruby" が実行され、'filetype' が ruby に 135 | 設定されます。 136 | 137 | 138 | ☆内容を見て判断する 139 | 140 | ファイル名からはファイル種別を判断できなくても、内容で判断できる場合がありま 141 | す。例えば、多くのスクリプトファイルは次のような行で始まります: 142 | 143 | #!/bin/xyz ~ 144 | 145 | このスクリプトを認識するには、"scripts.vim" というファイルをランタイムディレク 146 | トリに作ります (filetype.vim と同じ場所です)。中身は次のようになります: > 147 | 148 | if did_filetype() 149 | finish 150 | endif 151 | if getline(1) =~ '^#!.*[/\\]xyz\>' 152 | setf xyz 153 | endif 154 | 155 | 最初に did_filetype() を使って、既にファイル名からファイルタイプが認識されてい 156 | るかどうかを確認し、不要ならファイル内容のチェックを実行しないようにします。こ 157 | れは、"setf" コマンドが意味をなさないときに、ファイルのチェックによって時間を 158 | 無駄に消費しないためです。 159 | scripts.vim は標準ファイルの filetype.vim で定義された自動コマンドによって読み 160 | 込まれます。そのため、次の順番でチェックが実行されます: 161 | 162 | 1. 'runtimepath' の $VIMRUNTIME の前にある filetype.vim 163 | 2. $VIMRUNTIME/filetype.vim の前半部分 164 | 3. 'runtimepath' のすべての scripts.vim 165 | 4. $VIMRUNTIME/filetype.vim の後半部分 166 | 5. 'runtimepath' の $VIMRUNTIME の後にある filetype.vim 167 | 168 | もっと複雑なことがしたい場合は、すべてのファイルにマッチする自動コマンドを追加 169 | して、スクリプトを読み込むなり関数を実行するなりしてファイルの内容をチェックし 170 | てください。 171 | 172 | ============================================================================== 173 | 174 | 次章: |usr_44.txt| 構文ファイルを作成する 175 | 176 | Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: 177 | -------------------------------------------------------------------------------- /doc/usr_50.jax: -------------------------------------------------------------------------------- 1 | *usr_50.txt* For Vim バージョン 9.1. Last change: 2022 Jun 20 2 | 3 | VIM USER MANUAL - by Bram Moolenaar 4 | 5 | 高度な Vim script の書き方 6 | 7 | 8 | |50.1| 例外 9 | |50.2| 可変長引数の関数 10 | |50.3| ビューの復元 11 | 12 | 次章: |usr_51.txt| プラグインを作る 13 | 前章: |usr_45.txt| 言語を選択する (ロケール) 14 | 目次: |usr_toc.txt| 15 | 16 | ============================================================================== 17 | *50.1* 例外 18 | 19 | まずは例から始めましょう: > 20 | 21 | try 22 | read ~/templates/pascal.tmpl 23 | catch /E484:/ 24 | echo "パスカル用のテンプレートファイルは見つかりませんでした。" 25 | endtry 26 | 27 | `read` コマンドはファイルがなければ失敗します。そのエラーをキャッチして、エラー 28 | メッセージの代わりにより詳細な情報のメッセージを表示しています。 29 | 30 | `try` と `endtry` の間で起きたエラーは例外に変換されます。例外は文字列です。エ 31 | ラーの場合、文字列はエラーメッセージを含んでいます。そして、全てのエラーメッ 32 | セージは番号を持っています。この場合、キャッチしたエラーには "E484:" が含まれ 33 | ています。この番号は変わらないことが保証されています (テキストは翻訳されるなど 34 | して変わる可能性があります)。 35 | 36 | 素敵なエラーメッセージを出力し、Vim は `:endtry` 以降のコマンドの実行も続けま 37 | す。それ以外のキャッチされないエラーに遭遇した場合、スクリプト/関数/マッピング 38 | の実行は中断されます。 39 | 40 | `read` コマンドが他のエラーを起こした場合、"E484:" というパターンはマッチしな 41 | いでしょう。したがって、その例外はキャッチされず、通常のエラーメッセージの表示 42 | とともに実行が中断されます。 43 | 44 | あなたはこれをしたくなるかもしれません: > 45 | 46 | try 47 | read ~/templates/pascal.tmpl 48 | catch 49 | echo "パスカル用のテンプレートファイルは見つかりませんでした。" 50 | endtry 51 | 52 | 全ての例外がキャッチされます。しかし "E21: Cannot make changes, 'modifiable' 53 | is off" のようなまったく異なる問題を示す有効なエラーに気づくことができません。 54 | エラーをキャッチする前によく考えてください! 55 | 56 | もう1つの便利なメカニズムは `finally` コマンドです: > 57 | 58 | var tmp = tempname() 59 | try 60 | exe ":.,$write " .. tmp 61 | exe "!filter " .. tmp 62 | :.,$delete 63 | exe ":$read " .. tmp 64 | finally 65 | delete(tmp) 66 | endtry 67 | 68 | これは、ファイル名の引数をとる "filter" コマンドを使用して、カーソルからファイ 69 | ルの終わりまでの行をフィルタリングします。フィルタリングが動作しても、`try` と 70 | `finally` の間で何か問題が発生した場合や、ユーザーが CTRL-C を押してフィルタリ 71 | ングをキャンセルした場合は、常に `delete(tmp)` 呼び出しが実行されます。これに 72 | より、一時ファイルを残さないようにすることができます。 73 | 74 | `finally` は例外をキャッチせず、エラーはそれ以降の実行を中断します。 75 | 76 | 例外についてさらに詳しい情報はリファレンスマニュアルの|exception-handling|を 77 | 参照してください。 78 | 79 | ============================================================================== 80 | *50.2* 可変長引数の関数 81 | 82 | Vim では、可変数の引数を持つ関数を定義できます。例えば、次のコマンドは、1つの 83 | 引数(start)を持つ必要があり、最大20個の追加の引数を持つことができる関数を定義 84 | します: > 85 | 86 | def Show(start: string, ...items: list) 87 | 88 | 変数 "items" は、追加の引数を含む関数内のリストになります。any型のリストと同じ 89 | ように使用できます。例: > 90 | 91 | def Show(start: string, ...items: list) 92 | echohl Title 93 | echo "start is " .. start 94 | echohl None 95 | for index in range(len(items)) 96 | echon $" Arg {index} is {items[index]}" 97 | endfor 98 | echo 99 | enddef 100 | 101 | このように呼び出しできます: > 102 | 103 | Show('Title', 'one', 'two', 'three') 104 | < start is Title Arg 0 is one Arg 1 is two Arg 2 is three ~ 105 | 106 | これは `echohl` コマンドを使用して以降の `echo` コマンドをハイライトするように 107 | 指定しています。`echohl None` で再度停止します。`echon` コマンドは `echo` と同 108 | 様に動作しますが、改行を出力しません。 109 | 110 | 引数を1つで呼び出したときは "items" リストは空になります。`range(len(items))` 111 | はインデックス付きのリストを返します。`for` がループするものについては、さらに 112 | 詳しく説明します。 113 | 114 | ============================================================================== 115 | *50.3* ビューの復元 116 | 117 | 場合によっては、ジャンプして変更を加えてから、同じ位置とビューに戻りたいことが 118 | あります。例えば、ファイルヘッダーの何かを変更します。これは、次の 2 つの関数 119 | で実行できます: > 120 | 121 | var view = winsaveview() 122 | # 移動して、変更を行う 123 | winrestview(view) 124 | 125 | ============================================================================== 126 | 127 | Next chapter: |usr_51.txt| プラグインを作る 128 | 129 | Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: 130 | -------------------------------------------------------------------------------- /doc/vietnamese.jax: -------------------------------------------------------------------------------- 1 | *vietnamese.txt* For Vim バージョン 9.1. Last change: 2024 Dec 04 2 | 3 | 4 | VIMリファレンスマニュアル by Phạm Bình An 5 | 6 | 7 | Vim でのベトナム語サポート *vietnamese* *Vietnamese* 8 | 9 | 1. はじめに |vietnamese-intro| 10 | 2. ベトナム語キーマップ |vietnamese-keymap| 11 | 3. ローカライゼーション |vietnamese-l10n| 12 | 13 | =============================================================================== 14 | 1. はじめに 15 | *vietnamese-intro* 16 | Vim は、以下の方法でベトナム語をサポートしている: 17 | 18 | - 組み込みの |vietnamese-keymap| により、US キーボードレイアウトを使用して 19 | |Insert-mode| および |search-commands| でベトナム語の文字を入力できる。 20 | - ベトナム語へのローカライズ。|vietnamese-l10n| を参照。 21 | 22 | =============================================================================== 23 | 2. ベトナム語のキーマップ 24 | *vietnamese-keymap* 25 | 言語を切り替えるには、システムネイティブのキーボードスイッチャーを使用するか、 26 | 以下のように Vim ディストリビューションに含まれるベトナム語キーマップのいずれ 27 | かを使用する > 28 | :set keymap=vietnamese-telex_utf-8 29 | < 30 | 詳細については |'keymap'| を参照。 31 | 32 | 後者の場合、ベトナム語入力メソッドエンジン (IME) がない場合でも、または Vim を 33 | システム全体のキーボード設定から独立させたい場合 (|'imdisable'| が設定されてい 34 | る場合) でも、ベトナム語を入力できる。また、キーを |:map| してキーボードを切り 35 | 替えることもできる。 36 | 37 | Vim には次のベトナム語キーマップが付属している: 38 | - *vietnamese-telex_utf-8* Telex インプットメソッド、|UTF-8| エンコード。 39 | - *vietnamese-viqr_utf-8* VIQR インプットメソッド、|UTF-8| エンコード。 40 | - *vietnamese-vni_utf-8* VNI インプットメソッド、|UTF-8| エンコード。 41 | 42 | *vietnamese-ime_diff* 43 | これらのキーマップは最小限に抑えるように設計されているため、対応するインプット 44 | メソッドのすべての機能をサポートしているわけではない。違いは以下のとおり: 45 | 46 | - 各文字は個別に入力することしかできず、最初に基本文字を入力し、その後に分音記 47 | 号を入力する。例えば、|vietnamese-vni_utf-8| を使用して `nến` という単語を入 48 | 力するには、`nen61` や `ne6n1` ではなく、`ne61n` と入力する必要がある 49 | - 発音区別符号が 1 つ以上ある文字の場合、声調記号の前に母音記号を入力する必要 50 | がある。例えば、|vietnamese-telex_utf-8| を使用して `ồ` と入力するには、 51 | `ofo` ではなく `oof` と入力する必要がある。 52 | - |vietnamese-telex_utf-8| では、発音区別記号付きの大文字を生成するには、すべ 53 | て大文字を入力する必要がある。例えば、`Ừ` は `UWF` と入力する必要がある。 54 | - |vietnamese-telex_utf-8| を使用すると、VNI からのエスケープ文字 `\` が追加さ 55 | れるため、曖昧さを引き起こす可能性のある `ooo` の入力が削除される。例えば、 56 | 単語 `Đoòng` を入力するには、`DDo\ofng` と入力する。 57 | - `w[]{}` スタイルを含む Simple Telex (v1 と v2 の両方) はサポートされていな 58 | い。 59 | - Telex の `z` または VNI と VIQR の `0` を使用して分音記号を削除することはサ 60 | ポートされていない。 61 | 62 | =============================================================================== 63 | 3. ローカライゼーション 64 | *vietnamese-l10n* 65 | Vim の |messages| はベトナム語でも使用できる。メッセージをベトナム語で表示した 66 | い場合は、ベトナム語ロケールの名前を引数として |:language| コマンドを実行する。 67 | 例えば、 > 68 | :language vi_VN 69 | < または > 70 | :language vi_VN.utf-8 71 | < 72 | Note ベトナム語ロケールの名前はシステムによって異なる場合があることに注意。詳 73 | 細については |mbyte-first| を参照。 74 | 75 | |vimtutor| はベトナム語でも使用可能である。ベトナム語で Vimtutor を起動するに 76 | は、端末で次のコマンドを実行する: > 77 | vimtutor vi 78 | < 79 | =============================================================================== 80 | vim:tw=78:ts=8:noet:ft=help:norl: 81 | -------------------------------------------------------------------------------- /doc/workshop.jax: -------------------------------------------------------------------------------- 1 | *workshop.txt* For Vim バージョン 9.1. Last change: 2019 Jan 17 2 | 3 | 4 | VIM リファレンスマニュアル by Gordon Prieur 5 | 6 | 7 | Sun Visual WorkShop との連携機能 *workshop* *workshop-support* 8 | 9 | WorkShopのサポートは、2019年1月のpatch 8.1.0763 で削除された。 10 | この製品は長い間入手できず、|NetBeans| に置き換えられた。 11 | 12 | 13 | vim:tw=78:ts=8:noet:ft=help:norl: 14 | -------------------------------------------------------------------------------- /en/debugger.txt: -------------------------------------------------------------------------------- 1 | *debugger.txt* For Vim version 9.1. Last change: 2019 Dec 21 2 | 3 | 4 | VIM REFERENCE MANUAL by Gordon Prieur 5 | 6 | 7 | Debugger Support Features *debugger-support* 8 | 9 | These features are for integration with a debugger or an Integrated 10 | Programming Environment (IPE) or Integrated Development Environment (IDE). 11 | For the debugger running in a Vim terminal window see |terminal-debugger|. 12 | 13 | 1. Debugger Features |debugger-features| 14 | 2. Vim Compile Options |debugger-compilation| 15 | 16 | ============================================================================== 17 | 1. Debugger Features *debugger-features* 18 | 19 | The following features are available: 20 | 21 | Alternate Command Input |alt-input| 22 | Debug Signs |debug-signs| 23 | Debug Source Highlight |debug-highlight| 24 | Message Footer |gui-footer| 25 | Balloon Evaluation |balloon-eval| 26 | 27 | These features were added specifically for use in the Motif version of gvim. 28 | However, the |alt-input| and |debug-highlight| were written to be usable in 29 | both vim and gvim. Some of the other features could be used in the non-GUI 30 | vim with slight modifications. However, I did not do this nor did I test the 31 | reliability of building for vim or non Motif GUI versions. 32 | 33 | 34 | 1.1 Alternate Command Input *alt-input* 35 | 36 | For Vim to work with a debugger there must be at least an input connection 37 | with a debugger or external tool. In many cases there will also be an output 38 | connection but this isn't absolutely necessary. 39 | 40 | The purpose of the input connection is to let the external debugger send 41 | commands to Vim. The commands sent by the debugger should give the debugger 42 | enough control to display the current debug environment and state. 43 | 44 | The current implementation is based on the X Toolkit dispatch loop and the 45 | XtAddInput() function call. 46 | 47 | 48 | 1.2 Debug Signs *debug-signs* 49 | 50 | Many debuggers mark specific lines by placing a small sign or color highlight 51 | on the line. The |:sign| command lets the debugger set this graphic mark. Some 52 | examples where this feature would be used would be a debugger showing an arrow 53 | representing the Program Counter (PC) of the program being debugged. Another 54 | example would be a small stop sign for a line with a breakpoint. These visible 55 | highlights let the user keep track of certain parts of the state of the 56 | debugger. 57 | 58 | This feature can be used with more than debuggers, too. An IPE can use a sign 59 | to highlight build errors, searched text, or other things. The sign feature 60 | can also work together with the |debug-highlight| to ensure the mark is 61 | highly visible. 62 | 63 | Debug signs are defined and placed using the |:sign| command. 64 | 65 | 66 | 1.3 Debug Source Highlight *debug-highlight* 67 | 68 | This feature allows a line to have a predominant highlight. The highlight is 69 | intended to make a specific line stand out. The highlight could be made to 70 | work for both vim and gvim, whereas the debug sign is, in most cases, limited 71 | to gvim. The one exception to this is Sun Microsystem's dtterm. The dtterm 72 | from Sun has a "sign gutter" for showing signs. 73 | 74 | 75 | 1.4 Message Footer *gui-footer* 76 | 77 | The message footer can be used to display messages from a debugger or IPE. It 78 | can also be used to display menu and toolbar tips. The footer area is at the 79 | bottom of the GUI window, below the line used to display colon commands. 80 | 81 | The display of the footer is controlled by the 'guioptions' letter 'F'. 82 | 83 | 84 | 1.5 Balloon Evaluation *balloon-eval* 85 | 86 | This feature allows a debugger, or other external tool, to display dynamic 87 | information based on where the mouse is pointing. The purpose of this feature 88 | was to allow Sun's Visual WorkShop debugger to display expression evaluations. 89 | However, the feature was implemented in as general a manner as possible and 90 | could be used for displaying other information as well. The functionality is 91 | limited though, for advanced popups see |popup-window|. 92 | 93 | Another way to use the balloon is with the 'balloonexpr' option. This is 94 | completely user definable. 95 | 96 | The Balloon Evaluation has some settable parameters too. For Motif the font 97 | list and colors can be set via X resources (XmNballoonEvalFontList, 98 | XmNballoonEvalBackground, and XmNballoonEvalForeground). 99 | The 'balloondelay' option sets the delay before an attempt is made to show a 100 | balloon. 101 | The 'ballooneval' and/or the 'balloonevalterm' option needs to be set to 102 | switch it on. 103 | 104 | Balloon evaluation is only available in the GUI when compiled with the 105 | |+balloon_eval| feature. For the terminal the |+balloon_eval_term| feature 106 | matters. 107 | 108 | The Balloon evaluation functions are also used to show a tooltip for the 109 | toolbar. The 'ballooneval' option does not need to be set for this. But the 110 | other settings apply. 111 | 112 | ============================================================================== 113 | 2. Vim Compile Options *debugger-compilation* 114 | 115 | The debugger features were added for use with Sun's Visual WorkShop Integrated 116 | Programming Environment (ipe). However, they were done in as generic a manner 117 | as possible so that integration with other debuggers could also use these 118 | features. 119 | 120 | The following compile time preprocessor variables control the features: 121 | 122 | Alternate Command Input ALT_X_INPUT 123 | Debug Glyphs FEAT_SIGNS 124 | Debug Highlights FEAT_SIGNS 125 | Message Footer FEAT_FOOTER 126 | Balloon Evaluation FEAT_BEVAL 127 | 128 | The support specifically for Sun Visual WorkShop has been removed, since the 129 | product no longer exists. 130 | 131 | For Sun NetBeans support see |netbeans|. 132 | 133 | 134 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 135 | -------------------------------------------------------------------------------- /en/farsi.txt: -------------------------------------------------------------------------------- 1 | *farsi.txt* For Vim version 9.1. Last change: 2019 May 05 2 | 3 | 4 | VIM REFERENCE MANUAL by Mortaza Ghassab Shiran 5 | 6 | 7 | Right to Left and Farsi Mapping for Vim *farsi* *Farsi* 8 | 9 | 10 | *E27* 11 | Farsi support has been removed in patch 8.1.0932. At that time it was 12 | outdated and unused. 13 | 14 | If you would like to bring Farsi support back, please have a look at the old 15 | Farsi code, as it was present at the 8.1 release. It should be merged with 16 | Arabic support using the Unicode character set. 17 | 18 | 19 | vim:tw=78:ts=8:noet:ft=help:norl: 20 | -------------------------------------------------------------------------------- /en/ft_context.txt: -------------------------------------------------------------------------------- 1 | *ft_context.txt* For Vim version 9.1. Last change: 2024 Jan 01 2 | 3 | This is the documentation for the ConTeXt filetype plugin. 4 | 5 | NOTE: the plugin requires +vim9script. 6 | 7 | ============================================================================== 8 | CONTENTS *context.vim* *ft-context* 9 | 10 | 1. Introduction |ft-context-intro| 11 | 2. Commands |ft-context-commands| 12 | 3. Settings |ft-context-settings| 13 | 4. Mappings |ft-context-mappings| 14 | 15 | ============================================================================== 16 | *ft-context-intro* 17 | Introduction ~ 18 | 19 | ConTeXt, similarly to LaTeX, is a macro-based typesetting system built on TeX: 20 | > 21 | https://wiki.contextgarden.net 22 | https://wiki.contextgarden.net/Vim 23 | < 24 | The ConTeXt plugin provides syntax highlighting, completion and support for 25 | typesetting ConTeXt documents. The recommended way to typeset a document is to 26 | use |:ConTeXt|. This will invoke the `mtxrun` script that is found in `$PATH`. 27 | 28 | For more fine grained control over the command and its environment, 29 | `context.Typeset()` can be used directly (or `context#Typeset()` from legacy 30 | Vim script). For instance, if a version of ConTeXt is installed in 31 | `~/context`, you may define a function to use it similar to the following: 32 | > 33 | import autoload 'context.vim' 34 | 35 | def MyConTeXt() 36 | const env = {'PATH': 37 | printf("%s/context/tex/texmf--/bin:%s", $HOME, $PATH)} 38 | context.Typeset("%", env) 39 | enddef 40 | 41 | This code may go in `~/.vim/after/ftplugin/context.vim`. A mapping can then be 42 | defined to invoke the custom command: 43 | > 44 | nnoremap t MyConTeXt() 45 | < 46 | `context.Typeset()` accepts a third optional argument to specify a custom 47 | typesetting command. That must be a function that takes a path and returns the 48 | command as a List. For example: 49 | > 50 | def ConTeXtCustomCommand(path: string): list 51 | return ['mtxrun', '--script', 'context', '--nonstopmode', path] 52 | enddef 53 | 54 | context.ConTeXtTypeset("%", v:none, ConTeXtCustomCommand) 55 | < 56 | Large projects are often organized as a root document and various chapter 57 | files. When editing a chapter file, it is convenient to invoke |:ConTeXt| 58 | directly on it, rather than having to switch to the root file. A "magic line" 59 | can be added at the beginning of each chapter file, which specifies the 60 | relative path to the root file. For instance: 61 | > 62 | % !TEX root = ../MyRoot.tex 63 | < 64 | Vim searches for the magic line in the first ten lines of the current buffer: 65 | if it is found, the document specified by that line is typeset rather than the 66 | one in the current buffer. The root document does not have to be opened in 67 | Vim. 68 | 69 | To extend completion and syntax highlighting, you may generate supporting 70 | files using ConTeXt and add them to your configuration. If you configuration 71 | resides in `~/.vim`, you may use these commands: 72 | > 73 | mkdir -p ~/.vim/syntax/shared 74 | cd ~/.vim/syntax/shared 75 | mtxrun --script interface --vim 76 | < 77 | The last command will create the following syntax files: 78 | 79 | - `context-data-context.vim`; 80 | - `context-data-interfaces.vim`; 81 | - `context-data-metafun.vim`; 82 | - `context-data-tex.vim`. 83 | 84 | The same command can be used to update those syntax files. 85 | 86 | *ft-context-commands* 87 | Commands ~ 88 | *:ConTeXt* 89 | Start a background |job| to typeset the document in the current buffer. The 90 | command accepts an optional buffer's name, if you want to typeset a document 91 | that is in a different buffer. 92 | 93 | *:ConTeXtLog* 94 | Edit the log file corresponding to the source in the current buffer. 95 | 96 | *:ConTeXtJobsStatus* 97 | Echo the number of jobs currently running in the background. 98 | 99 | *:ConTeXtStopJobs* 100 | Stop all the ConTeXt jobs currently running in the background. 101 | 102 | *ft-context-settings* 103 | Settings ~ 104 | *'b:context_ignore_makefile'* 105 | *'g:context_ignore_makefile'* 106 | |:make| can be used to (synchronously) typeset a document. If a Makefile exists 107 | and this option is not set, standard `make` is used. If this option is set, 108 | `mtxrun` is invoked instead, even if a Makefile exists. 109 | > 110 | g:context_ignore_makefile = 0 111 | < 112 | NOTE: before using |:make|, set the working directory of the buffer to the 113 | directory of the file to be typeset. 114 | 115 | *'g:context_extra_options'* 116 | A list of additional options to pass to `mtxrun`. 117 | > 118 | g:context_extra_options = [] 119 | < 120 | *'b:context_include'* 121 | *'g:context_include'* 122 | Dictionary of filetype/GROUP pairs for which syntax highlighting should be 123 | activated between \startGROUP and \stopGROUP. The default is to highlight XML 124 | between `\startXML` and `\stopXML`. 125 | > 126 | g:context_include = {'xml': 'XML'} 127 | 128 | NOTE: Lua and MetaPost are always highlighted within the respective blocks. 129 | 130 | *'g:no_context_maps'* 131 | When set, do not define any mappings. 132 | > 133 | g:no_context_maps = 0 134 | < 135 | *ft-context-mappings* 136 | Mappings ~ 137 | 138 | tp "reflow TeX paragraph". 139 | 140 | i$ "inside inline math block". 141 | 142 | a$ "around inline math block". 143 | 144 | ]] [count] start of sections forward. 145 | 146 | [[ [count] start of sections backward. 147 | 148 | ][ [count] end sections forward. 149 | 150 | [] [count] end of sections backward. 151 | 152 | ]} [count] end of blocks (\stop..., \setup..., 153 | \define...) forward. 154 | 155 | [{ [count] begin of blocks (\start..., \setup..., 156 | \define...) backward. 157 | 158 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 159 | -------------------------------------------------------------------------------- /en/ft_hare.txt: -------------------------------------------------------------------------------- 1 | *ft_hare.txt* Support for the Hare programming language 2 | 3 | ============================================================================== 4 | CONTENTS *hare* 5 | 6 | 1. Introduction |hare-intro| 7 | 2. Filetype plugin |hare-plugin| 8 | 3. Settings |hare-settings| 9 | 10 | ============================================================================== 11 | INTRODUCTION *hare-intro* 12 | 13 | This plugin provides syntax highlighting, indentation, and other functionality 14 | for the Hare programming language. Support is also provided for README files 15 | inside Hare modules, but this must be enabled by setting |g:filetype_haredoc|. 16 | 17 | ============================================================================== 18 | FILETYPE PLUGIN *hare-plugin* 19 | 20 | This plugin automatically sets the value of 'path' to include the contents of 21 | the HAREPATH environment variable, allowing commands such as |gf| to directly 22 | open standard library or third-party modules. If HAREPATH is not set, it 23 | defaults to the recommended paths for most Unix-like filesystems, namely 24 | /usr/src/hare/stdlib and /usr/src/hare/third-party. 25 | 26 | ============================================================================== 27 | SETTINGS *hare-settings* 28 | 29 | This plugin provides a small number of variables that you can define in your 30 | vimrc to configure its behavior. 31 | 32 | *g:filetype_haredoc* 33 | This plugin is able to automatically detect Hare modules and set the "haredoc" 34 | filetype for any README files. As the recursive directory search used as a 35 | heuristic has a minor performance impact, this feature is disabled by default 36 | and must be specifically opted into: > 37 | let g:filetype_haredoc = 1 38 | < 39 | See |g:haredoc_search_depth| for ways to tweak the searching behavior. 40 | 41 | *g:hare_recommended_style* 42 | The following options are set by default, in accordance with the official Hare 43 | style guide: > 44 | setlocal noexpandtab 45 | setlocal shiftwidth=0 46 | setlocal softtabstop=0 47 | setlocal tabstop=8 48 | setlocal textwidth=80 49 | < 50 | To disable this behavior: > 51 | let g:hare_recommended_style = 0 52 | < 53 | *g:hare_space_error* 54 | By default, trailing whitespace and tabs preceded by space characters are 55 | highlighted as errors. This is automatically turned off when in insert mode. 56 | To disable this highlighting completely: > 57 | let g:hare_space_error = 0 58 | < 59 | *g:haredoc_search_depth* 60 | By default, when |g:filetype_haredoc| is enabled, only the current directory 61 | and its immediate subdirectories are searched for Hare files. The maximum 62 | search depth may be adjusted with: > 63 | let g:haredoc_search_depth = 2 64 | < 65 | Value Effect~ 66 | 0 Only search the current directory. 67 | 1 Search the current directory and immediate 68 | subdirectories. 69 | 2 Search the current directory and two levels of 70 | subdirectories. 71 | 72 | The maximum search depth can be set to any integer, but using values higher 73 | than 2 is not recommended, and will likely provide no tangible benefit in most 74 | situations. 75 | 76 | ============================================================================== 77 | vim:tw=78:ts=8:noet:ft=help:norl: 78 | -------------------------------------------------------------------------------- /en/ft_mp.txt: -------------------------------------------------------------------------------- 1 | *ft_mp.txt* For Vim version 9.1. Last change: 2022 Aug 12 2 | 3 | This is the documentation for the METAFONT and MetaPost filetype plugins. 4 | Unless otherwise specified, the commands, settings and mappings defined below 5 | apply equally to both filetypes. 6 | 7 | NOTE: the plugin requires +vim9script. 8 | 9 | ============================================================================== 10 | CONTENTS *mp.vim* *ft-metapost* 11 | *mf.vim* *ft-metafont* 12 | 13 | 1. Introduction |ft-metapost-intro| 14 | 2. Commands |ft-metapost-commands| 15 | 3. Settings |ft-metapost-settings| 16 | 4. Mappings |ft-metapost-mappings| 17 | 18 | ============================================================================== 19 | *ft-metapost-intro* 20 | *ft-metafont-intro* 21 | Introduction ~ 22 | This filetype plugin provides extensive support for editing METAFONT and 23 | MetaPost documents, including syntax coloring, indentation, and completion. 24 | 25 | Defining indentation rules for METAFONT and MetaPost code is tricky and 26 | somewhat subjective, because the syntax is quite liberal. The plugin uses some 27 | heuristics that work well most of the time, but in particular cases you may 28 | want to to override the automatic rules, so that the manually defined 29 | indentation is preserved by commands like `gg=G`. 30 | 31 | This can be achieved by appending `%>`, `%<`, `%=` or `%!` to a line to 32 | explicitly control the indentation of the next line. The `<` and `>` symbols 33 | may be repeated many times: for instance, `%>>` will cause the next line to be 34 | indented twice. Of course, `%<` means that the next line should be 35 | de-indented; `%=` sets the indentation of the next line to be equal to the 36 | indentation of the current line; and `%!` means that the indentation of the 37 | next line should not change from whatever it has been manually set. 38 | 39 | For example, this is the default indentation of a simple macro: 40 | > 41 | def foo = 42 | makepen( 43 | subpath(T-n,t) of r 44 | shifted .5down 45 | --subpath(t,T) of r shifted .5up -- cycle 46 | ) 47 | withcolor black 48 | enddef 49 | < 50 | By adding the special comments, the indentation can be adjusted arbitrarily: 51 | > 52 | def foo = 53 | makepen( 54 | subpath(T-n,t) of r %> 55 | shifted .5down %> 56 | --subpath(t,T) of r shifted .5up -- cycle %<<< 57 | ) 58 | withcolor black 59 | enddef 60 | < 61 | *ft-metapost-commands* 62 | Commands ~ 63 | *:FixBeginfigs* 64 | Renumber beginfig() blocks in the current buffer so that the n-th figure has 65 | number n. MetaPost only. 66 | 67 | *ft-metapost-settings* 68 | *ft-metafont-settings* 69 | Settings ~ 70 | *'g:mf_other_macros'* 71 | Highlight some other basic macro names, e.g., from cmbase, logo, etc. This is 72 | set to 1 by default in METAFONT buffers, and it is set to 0 by default in 73 | MetaPost buffers. 74 | 75 | *'g:mf_plain_macros'* 76 | Highlight keywords defined by plain.mf. This is set to 1 by default in 77 | METAFONT buffers, and it is set to 0 by default in MetaPost buffers. 78 | 79 | *'g:mf_plain_modes'* 80 | Highlight keywords defined by modes.mf. This is set to 1 by default in 81 | METAFONT buffers, and it is set to 0 by default in MetaPost buffers. 82 | 83 | *'g:mp_close_tag'* 84 | Define additional keywords that end indented blocks. For instance, if you 85 | define: 86 | > 87 | g:mp_close_tag = ['\'] 88 | < 89 | any line starting with `endfoo` will be de-indented compared to its previous 90 | line. 91 | > 92 | g:mp_close_tag = [] 93 | < 94 | *'b:mp_metafun'* 95 | *'g:mp_metafun'* 96 | If set to 1, highlight ConTeXt's MetaFun keywords. MetaPost only. 97 | > 98 | g:mp_metafun = 0 99 | < 100 | *'g:mp_mfplain_macros'* 101 | Highlight keywords defined by mfplain.mp. MetaPost only. 102 | > 103 | g:mp_mfplain_macros = 1 104 | < 105 | *'g:mp_open_tag'* 106 | Define additional keywords that start indented blocks. For instance, if you 107 | define: 108 | > 109 | g:mp_open_tag = ['\'] 110 | < 111 | the line following `beginfoo` will be indented. 112 | > 113 | g:mp_open_tag = [] 114 | < 115 | *'g:mp_other_macros'* 116 | Highlight keywords defined by all base macro packages (boxes, rboxes, format, 117 | graph, marith, sarith, string, TEX). This option affects only MetaPost 118 | buffers. 119 | > 120 | g:mp_other_macros = 1 121 | < 122 | *'g:mp_plain_macros'* 123 | Highlight keywords defined by plain.mp. MetaPost only. 124 | > 125 | g:mp_plain_macros = 1 126 | < 127 | *'g:no_mp_maps'* 128 | *'g:no_mf_maps'* 129 | When set, do not define any mapping in buffers with the corresponding 130 | filetype. 131 | > 132 | g:no_mp_maps = 0 133 | g:no_mf_maps = 0 134 | < 135 | *ft-metapost-mappings* 136 | *ft-metafont-mappings* 137 | Mappings ~ 138 | 139 | ]] [count] vardefs, macros or figures forward. 140 | 141 | [[ [count] vardefs, macros or figures backward. 142 | 143 | ][ [count] end of vardefs, macros or figures forward. 144 | 145 | [] [count] end of vardefs, macros or figures backward. 146 | 147 | ]} [count] end of blocks (fi, endfor, endgroup) forward. 148 | 149 | [{ [count] begin of blocks (if, for, begingroup) backward. 150 | 151 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 152 | -------------------------------------------------------------------------------- /en/ft_ps1.txt: -------------------------------------------------------------------------------- 1 | *ft_ps1.txt* A Windows PowerShell syntax plugin for Vim 2 | 3 | Author: Peter Provost 4 | License: Apache 2.0 5 | URL: https://github.com/PProvost/vim-ps1 6 | 7 | INTRODUCTION *ps1-syntax* 8 | 9 | This plugin provides Vim syntax, indent and filetype detection for Windows 10 | PowerShell scripts, modules, and XML configuration files. 11 | 12 | 13 | ABOUT *ps1-about* 14 | 15 | Grab the latest version or report a bug on GitHub: 16 | 17 | https://github.com/PProvost/vim-ps1 18 | 19 | 20 | FOLDING *ps1-folding* 21 | 22 | The ps1 syntax file provides syntax folding (see |:syn-fold|) for script blocks 23 | and digital signatures in scripts. 24 | 25 | When 'foldmethod' is set to "syntax" then function script blocks will be 26 | folded unless you use the following in your .vimrc or before opening a script: > 27 | 28 | :let g:ps1_nofold_blocks = 1 29 | < 30 | Digital signatures in scripts will also be folded unless you use: > 31 | 32 | :let g:ps1_nofold_sig = 1 33 | < 34 | Note: syntax folding might slow down syntax highlighting significantly, 35 | especially for large files. 36 | 37 | 38 | COMPILER *ps1-compiler* 39 | 40 | The powershell `:compiler` script configures |:make| to execute the script in 41 | PowerShell. 42 | 43 | It tries to pick a smart default PowerShell command: `pwsh` if available and 44 | `powershell` otherwise, but you can customize the command: > 45 | 46 | :let g:ps1_makeprg_cmd = '/path/to/pwsh' 47 | < 48 | To configure whether to show the exception type information: > 49 | 50 | :let g:ps1_efm_show_error_categories = 1 51 | < 52 | 53 | KEYWORD LOOKUP *ps1-keyword* 54 | 55 | To look up keywords using PowerShell's Get-Help, press the |K| key. For more 56 | convenient paging, the pager `less` should be installed, which is included in 57 | many Linux distributions and in macOS. 58 | 59 | Many other distributions are available for Windows like 60 | https://chocolatey.org/packages/less/. Make sure `less` is in a directory 61 | listed in the `PATH` environment variable, which chocolatey above does. 62 | 63 | ------------------------------------------------------------------------------ 64 | vim:ft=help: 65 | -------------------------------------------------------------------------------- /en/ft_raku.txt: -------------------------------------------------------------------------------- 1 | *ft_raku.txt* The Raku programming language filetype 2 | 3 | *vim-raku* 4 | 5 | Vim-raku provides syntax highlighting, indentation, and other support for 6 | editing Raku programs. 7 | 8 | 1. Using Unicode in your Raku files |raku-unicode| 9 | 10 | ============================================================================== 11 | 1. Using Unicode in your Raku files *raku-unicode* 12 | 13 | Defining new operators using Unicode symbols is a good way to make your 14 | Raku program easy to read. See: 15 | https://perl6advent.wordpress.com/2012/12/18/day-18-formulas-resistance-is-futile/ 16 | 17 | While Raku does define ASCII alternatives for some common operators (see 18 | https://docs.raku.org/language/unicode_ascii), using the full range of 19 | Unicode operators is highly desirable. Your operating system provides input 20 | facilities, but using the features built in to Vim may be preferable. 21 | 22 | The natural way to produce these symbols in Vim is to use digraph shortcuts 23 | (:help |digraphs-use|). Many of them are defined; type `:digraphs` to get 24 | the list. A convenient way to read the list of digraphs is to save them in a 25 | file. From the shell: > 26 | vim +'redir >/tmp/vim-digraphs-listing.txt' +digraphs +'redir END' +q 27 | 28 | Some of them are available with standard Vim digraphs: 29 | << « /0 ∅ !< ≮ ~ 30 | >> » Ob ∘ !> ≯ ~ 31 | ., … 00 ∞ (C ⊂ ~ 32 | (U ∩ -: ÷ )C ⊃ ~ 33 | )U ∪ (_ ⊆ >= ≥ ~ 34 | ?= ≅ )_ ⊇ =< ≤ ~ 35 | (- ∈ ?= ≅ != ≠ ~ 36 | -) ∋ ?- ≃ ~ 37 | 38 | The Greek alphabet is available with '*' followed by a similar Latin symbol: 39 | *p π ~ 40 | *t τ ~ 41 | *X × ~ 42 | 43 | Numbers, subscripts and superscripts are available with 's' and 'S': 44 | 0s ₀ 0S ⁰ ~ 45 | 1s ₁ 1S ¹ ~ 46 | 2s ₂ 9S ⁹ ~ 47 | 48 | But some don't come defined by default. Those are digraph definitions you can 49 | add in your ~/.vimrc file. > 50 | exec 'digraph \\ ' .. char2nr('∖') 51 | exec 'digraph \< ' .. char2nr('≼') 52 | exec 'digraph \> ' .. char2nr('≽') 53 | exec 'digraph (L ' .. char2nr('⊈') 54 | exec 'digraph )L ' .. char2nr('⊉') 55 | exec 'digraph (/ ' .. char2nr('⊄') 56 | exec 'digraph )/ ' .. char2nr('⊅') 57 | exec 'digraph )/ ' .. char2nr('⊅') 58 | exec 'digraph U+ ' .. char2nr('⊎') 59 | exec 'digraph 0- ' .. char2nr('⊖') 60 | " Euler's constant 61 | exec 'digraph ne ' .. char2nr('𝑒') 62 | " Raku's atomic operations marker 63 | exec 'digraph @@ ' .. char2nr('⚛') 64 | 65 | Alternatively, you can write Insert mode abbreviations that convert ASCII- 66 | based operators into their single-character Unicode equivalent. > 67 | iabbrev !(<) ⊄ 68 | iabbrev !(<=) ⊈ 69 | iabbrev !(>) ⊅ 70 | iabbrev !(>=) ⊉ 71 | iabbrev !(cont) ∌ 72 | iabbrev !(elem) ∉ 73 | iabbrev != ≠ 74 | iabbrev (&) ∩ 75 | iabbrev (+) ⊎ 76 | iabbrev (-) ∖ 77 | iabbrev (.) ⊍ 78 | iabbrev (<) ⊂ 79 | iabbrev (<+) ≼ 80 | iabbrev (<=) ⊆ 81 | iabbrev (>) ⊃ 82 | iabbrev (>+) ≽ 83 | iabbrev (>=) ⊇ 84 | iabbrev (\|) ∪ 85 | iabbrev (^) ⊖ 86 | iabbrev (atomic) ⚛ 87 | iabbrev (cont) ∋ 88 | iabbrev (elem) ∈ 89 | iabbrev * × 90 | iabbrev **0 ⁰ 91 | iabbrev **1 ¹ 92 | iabbrev **2 ² 93 | iabbrev **3 ³ 94 | iabbrev **4 ⁴ 95 | iabbrev **5 ⁵ 96 | iabbrev **6 ⁶ 97 | iabbrev **7 ⁷ 98 | iabbrev **8 ⁸ 99 | iabbrev **9 ⁹ 100 | iabbrev ... … 101 | iabbrev / ÷ 102 | iabbrev << « 103 | iabbrev <<[=]<< «=« 104 | iabbrev <<[=]>> «=» 105 | iabbrev <= ≤ 106 | iabbrev =~= ≅ 107 | iabbrev >= ≥ 108 | iabbrev >> » 109 | iabbrev >>[=]<< »=« 110 | iabbrev >>[=]>> »=» 111 | iabbrev Inf ∞ 112 | iabbrev atomic-add-fetch ⚛+= 113 | iabbrev atomic-assign ⚛= 114 | iabbrev atomic-fetch ⚛ 115 | iabbrev atomic-dec-fetch --⚛ 116 | iabbrev atomic-fetch-dec ⚛-- 117 | iabbrev atomic-fetch-inc ⚛++ 118 | iabbrev atomic-inc-fetch ++⚛ 119 | iabbrev atomic-sub-fetch ⚛−= 120 | iabbrev e 𝑒 121 | iabbrev o ∘ 122 | iabbrev pi π 123 | iabbrev set() ∅ 124 | iabbrev tau τ 125 | < 126 | vim:tw=78:ts=8:noet:ft=help:norl: 127 | -------------------------------------------------------------------------------- /en/hangulin.txt: -------------------------------------------------------------------------------- 1 | *hangulin.txt* For Vim version 9.1. Last change: 2019 Nov 21 2 | 3 | 4 | VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam 5 | 6 | *hangul* 7 | Vim had built-in support for hangul, the Korean language, for users without 8 | XIM (X Input Method). Since it didn't work well and was not maintained it was 9 | removed in Vim 8.1.2327. 10 | 11 | If you want this hangul input method you can go back to Vim 8.1.2326 or 12 | earlier. If you think this code is still useful and want to maintain it, make 13 | a patch to add it back. However, making it work with UTF-8 encoding would be 14 | best. 15 | 16 | 17 | vim:tw=78:ts=8:noet:ft=help:norl: 18 | -------------------------------------------------------------------------------- /en/howto.txt: -------------------------------------------------------------------------------- 1 | *howto.txt* For Vim version 9.1. Last change: 2006 Apr 02 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | How to ... *howdoi* *how-do-i* *howto* *how-to* 8 | 9 | |tutor| get started 10 | |:quit| exit? I'm trapped, help me! 11 | |initialization| initialize Vim 12 | |vimrc-intro| write a Vim script file (vimrc) 13 | |suspend| suspend Vim 14 | |usr_11.txt| recover after a crash 15 | |07.4| keep a backup of my file when writing over it 16 | 17 | |usr_07.txt| edit files 18 | |23.4| edit binary files 19 | |usr_24.txt| insert text 20 | |deleting| delete text 21 | |usr_04.txt| change text 22 | |04.5| copy and move text 23 | |usr_25.txt| format text 24 | |30.6| format comments 25 | |30.2| indent C programs 26 | |25.3| automatically set indent 27 | 28 | |usr_26.txt| repeat commands 29 | |02.5| undo and redo 30 | 31 | |usr_03.txt| move around 32 | |word-motions| word motions 33 | |left-right-motions| left-right motions 34 | |up-down-motions| up-down motions 35 | |object-motions| text-object motions 36 | |various-motions| various motions 37 | |object-select| text-object selection 38 | |'whichwrap'| move over line breaks 39 | |'virtualedit'| move to where there is no text 40 | |usr_27.txt| specify pattern for searches 41 | |tags-and-searches| do tags and special searches 42 | |29.4| search in include'd files used to find 43 | variables, functions, or macros 44 | |K| look up manual for the keyword under cursor 45 | 46 | |03.7| scroll 47 | |'sidescroll'| scroll horizontally/sideways 48 | |'scrolloff'| set visible context lines 49 | 50 | |mode-switching| change modes 51 | |04.4| use Visual mode 52 | |'insertmode'| start Vim in Insert mode 53 | 54 | |40.1| map keys 55 | |24.7| create abbreviations 56 | 57 | |ins-expandtab| expand a tab to spaces in Insert mode 58 | |i_CTRL-R| insert contents of a register in Insert mode 59 | |24.3| complete words in Insert mode 60 | |25.1| break a line before it gets too long 61 | 62 | |20.1| do command-line editing 63 | |20.3| do command-line completion 64 | |'cmdheight'| increase the height of command-line 65 | |10.3| specify command-line ranges 66 | |40.3| specify commands to be executed automatically 67 | before/after reading/writing entering/leaving a 68 | buffer/window 69 | 70 | |'autowrite'| write automatically 71 | |30.1| speedup edit-compile-edit cycle or compile and fix 72 | errors within Vim 73 | 74 | |options| set options 75 | |auto-setting| set options automatically 76 | |term-dependent-settings| set options depending on terminal name 77 | |save-settings| save settings 78 | |:quote| comment my .vim files 79 | |'helpheight'| change the default help height 80 | |'highlight'| set various highlighting modes 81 | |'title'| set the window title 82 | |'icon'| set window icon title 83 | |'report'| avoid seeing the change messages on every line 84 | |'shortmess'| avoid |hit-enter| prompts 85 | 86 | |mouse-using| use mouse with Vim 87 | |usr_08.txt| manage multiple windows and buffers 88 | |gui.txt| use the gui 89 | 90 | |You can't! (yet)| do dishes using Vim 91 | 92 | |usr_06.txt| switch on syntax highlighting 93 | |2html.vim| convert a colored file to HTML 94 | |less| use Vim like less or more with syntax highlighting 95 | 96 | vim:tw=78:ts=8:noet:ft=help:norl: 97 | -------------------------------------------------------------------------------- /en/if_sniff.txt: -------------------------------------------------------------------------------- 1 | *if_sniff.txt* For Vim version 9.1. Last change: 2016 Feb 27 2 | 3 | 4 | VIM REFERENCE MANUAL 5 | by Anton Leherbauer (toni@takefive.co.at) 6 | 7 | 8 | The SNiFF+ support was removed at patch 7.4.1433. If you want to check it out 9 | sync to before that. 10 | 11 | vim:tw=78:ts=8:noet:ft=help:norl: 12 | -------------------------------------------------------------------------------- /en/os_390.txt: -------------------------------------------------------------------------------- 1 | *os_390.txt* For Vim version 9.1. Last change: 2019 Dec 07 2 | 3 | 4 | VIM REFERENCE MANUAL by Ralf Schandl 5 | 6 | *zOS* *z/OS* *OS390* *os390* *MVS* 7 | This file contains the particulars for the z/OS UNIX version of Vim. 8 | 9 | 1. ASCII/EBCDIC dependent scripts |zOS-has-ebcdic| 10 | 2. Putty and Colors |zOS-PuTTY| 11 | 3. Motif Problems |zOS-Motif| 12 | 4. Bugs |zOS-Bugs| 13 | 5. Limitations |zOS-limitations| 14 | 6. Open source on z/OS UNIX |zOS-open-source| 15 | 16 | Contributors: ~ 17 | The port to z/OS UNIX was done by Ralf Schandl for the Redbook mentioned 18 | below. 19 | 20 | Changes, bug-reports, or both by: 21 | 22 | David Moore 23 | Anthony Giorgio 24 | and others 25 | 26 | ============================================================================== 27 | 1. ASCII/EBCDIC dependent scripts *OS390-has-ebcdic* *zOS-has-ebcdic* 28 | 29 | For the internal script language the feature "ebcdic" was added. With this 30 | you can fix ASCII dependent scripts like this: 31 | > 32 | if has("ebcdic") 33 | let space = 64 34 | else 35 | let space = 32 36 | endif 37 | < 38 | 39 | ============================================================================== 40 | 2. PuTTY and Colors *OS390-PuTTY* *zOS-PuTTY* 41 | 42 | If you see problems with syntax highlighting or screen corruptions when you 43 | connect to z/OS using Putty, try the following: 44 | 45 | - Configure Putty as "vt220" terminal (Connection->Data) 46 | - Add the following 3 lines to your vimrc: 47 | 48 | > 49 | set t_AB=[4%p1%dm 50 | set t_AF=[3%p1%dm 51 | set t_CO=8 52 | < 53 | 54 | Note:  is one character use to enter it. 55 | 56 | ============================================================================== 57 | 3. Motif Problems *OS390-Motif* *zOS-Motif* 58 | 59 | Note: Seen with Vim 6.*, never tested since. 60 | 61 | It seems that in porting the Motif library to z/OS, a translation from EBCDIC 62 | to ASCII for the accelerator characters of the pull-down menus was forgotten. 63 | Even after I tried to hand convert the menus, the accelerator keys continued 64 | to only work for the opening of menus (like to open the file menu). 65 | They still do not work for the menu items themselves (like O to open 66 | the file browser). 67 | 68 | There is no solution for this yet. 69 | 70 | ============================================================================== 71 | 4. Bugs *OS390-bugs* *zOS-Bugs* 72 | 73 | - Vim will consistently hang when a large amount of text is selected in 74 | visual block mode. This may be due to a memory corruption issue. Note that 75 | this occurs in both the terminal and gui versions. 76 | 77 | ============================================================================== 78 | 5. Limitations *OS390-limitations* *zOS-limitations* 79 | 80 | - No binary search in tag files. 81 | The program /bin/sort sorts by ASCII value by default. This program is 82 | normally used by ctags to sort the tags. There might be a version of 83 | ctags out there, that does it right, but we can't be sure. So this seems to 84 | be a permanent restriction. 85 | 86 | - The cscope interface (|cscope|) doesn't work for the version of cscope that 87 | we use on our mainframe. We have a copy of version 15.0b12, and it causes 88 | Vim to hang when using the "cscope add" command. I'm guessing that the 89 | binary format of the cscope database isn't quite what Vim is expecting. 90 | I've tried to port the current version of cscope (15.3) to z/OS, without 91 | much success. If anyone is interested in trying, drop me a line if you 92 | make any progress. 93 | 94 | - No glib/gtk support. I have not been able to successfully compile glib on 95 | z/OS UNIX. This means you'll have to live without the pretty gtk toolbar. 96 | 97 | Disabled at compile time: 98 | - Multibyte support (|multibyte|) 99 | - Right-to-left mode (|rileft|) 100 | - Farsi key map (|Farsi|) 101 | - Arabic language support (|Arabic|) 102 | - Spell checking (|spell|) 103 | 104 | Never tested: 105 | - Perl interface (|perl|) 106 | - Hangul input (|hangul|) 107 | - Encryption support (|encryption|) 108 | - Langmap (|'langmap'|) 109 | - Python support (|Python|) 110 | - Right-to-left mode (|'rightleft'|) 111 | - TCL interface (|tcl|) 112 | ... 113 | 114 | ============================================================================== 115 | 6. Open source on z/OS UNIX *OS390-open-source* *zOS-open-source* 116 | 117 | If you are interested in other Open Source Software on z/OS UNIX, have a 118 | look at the following Redbook: 119 | 120 | Mike MacIsaac et al 121 | "Open Source Software for z/OS and OS/390 UNIX" 122 | IBM Form Number: SG24-5944-01 123 | ISBN: 0738424633 124 | http://www-03.ibm.com/systems/resources/servers_eserver_zseries_zos_unix_redbook_sg245944.pdf 125 | 126 | Also look at: 127 | http://www.redbooks.ibm.com 128 | http://www-03.ibm.com/systems/z/os/zos/features/unix/ 129 | http://www-03.ibm.com/systems/z/os/zos/features/unix/library/IBM+Redbooks/index.html 130 | 131 | 132 | 133 | ------------------------------------------------------------------------------ 134 | vim:tw=78:ts=8:noet:ft=help:norl: 135 | -------------------------------------------------------------------------------- /en/os_amiga.txt: -------------------------------------------------------------------------------- 1 | *os_amiga.txt* For Vim version 9.1. Last change: 2010 Aug 14 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | *Amiga* 8 | This file contains the particularities for the Amiga version of Vim. 9 | There is also a section specifically for |MorphOS| below. 10 | 11 | NOTE: The Amiga code is still included, but has not been maintained or tested. 12 | 13 | Installation on the Amiga: 14 | - Assign "VIM:" to the directory where the Vim "doc" directory is. Vim will 15 | look for the file "VIM:doc/help.txt" (for the help command). 16 | Setting the environment variable $VIM also works. And the other way around: 17 | when $VIM used and it is not defined, "VIM:" is used. 18 | - With DOS 1.3 or earlier: Put "arp.library" in "libs:". Vim must have been 19 | compiled with the |+ARP| feature enabled. Make sure that newcli and run are 20 | in "C:" (for executing external commands). 21 | - Put a shell that accepts a command with "-c" (e.g. "Csh" from Fish disk 22 | 624) in "c:" or in any other directory that is in your search path (for 23 | executing external commands). 24 | 25 | If you have sufficient memory you can avoid startup delays by making Vim and 26 | csh resident with the command "rez csh vim". You will have to put 27 | "rezlib.library" in your "libs:" directory. Under 2.0 you will need rez 28 | version 0.5. 29 | 30 | If you do not use digraphs, you can save some memory by recompiling without 31 | the |+digraphs| feature. If you want to use Vim with other terminals you can 32 | recompile with the TERMCAP option. Vim compiles with Manx 5.x and SAS 6.x. 33 | See the makefiles and feature.h. 34 | 35 | If you notice Vim crashes on some files when syntax highlighting is on, or 36 | when using a search pattern with nested wildcards, it might be that the stack 37 | is too small. Try increasing the stack size. In a shell use the Stack 38 | command before launching Vim. On the Workbench, select the Vim icon, use the 39 | workbench "Info" menu and change the Stack field in the form. 40 | 41 | If you want to use different colors set the termcap codes: 42 | t_mr (for inverted text) 43 | t_md (for bold text) 44 | t_me (for normal text after t_mr and t_md) 45 | t_so (for standout mode) 46 | t_se (for normal text after t_so) 47 | t_us (for underlined text) 48 | t_ue (for normal text after t_us) 49 | t_ZH (for italic text) 50 | t_ZR (for normal text after t_ZH) 51 | 52 | Standard ANSI escape sequences are used. The codes are: 53 | 30 grey char 40 grey cell >0 grey background 0 all attributes off 54 | 31 black char 41 black cell >1 black background 1 boldface 55 | 32 white char 42 white cell >2 white background 2 faint 56 | 33 blue char 43 blue cell >3 blue background 3 italic 57 | 34 grey char 44 grey cell >4 grey background 4 underscore 58 | 35 black char 45 black cell >5 black background 7 reverse video 59 | 36 white char 46 white cell >6 white background 8 invisible 60 | 37 blue char 47 blue cell >7 blue background 61 | 62 | The codes with '>' must be the last. The cell and background color should be 63 | the same. The codes can be combined by separating them with a semicolon. For 64 | example to get white text on a blue background: > 65 | :set t_me=^V[0;32;43;>3m 66 | :set t_se=^V[0;32;43;>3m 67 | :set t_ue=^V[0;32;43;>3m 68 | :set t_ZR=^V[0;32;43;>3m 69 | :set t_md=^V[1;32;43;>3m 70 | :set t_mr=^V[7;32;43;>3m 71 | :set t_so=^V[0;31;43;>3m 72 | :set t_us=^V[4;32;43;>3m 73 | :set t_ZH=^V[3;32;43;>3m 74 | 75 | When using multiple commands with a filter command, e.g. > 76 | :r! echo this; echo that 77 | Only the output of the last command is used. To fix this you have to group the 78 | commands. This depends on the shell you use (that is why it is not done 79 | automatically in Vim). Examples: > 80 | :r! (echo this; echo that) 81 | :r! {echo this; echo that} 82 | 83 | Commands that accept a single file name allow for embedded spaces in the file 84 | name. However, when using commands that accept several file names, embedded 85 | spaces need to be escaped with a backslash. 86 | 87 | ------------------------------------------------------------------------------ 88 | Vim for MorphOS *MorphOS* 89 | 90 | [this section mostly by Ali Akcaagac] 91 | 92 | For the latest info about the MorphOS version: 93 | http://www.akcaagac.com/index_vim.html 94 | 95 | 96 | Problems ~ 97 | 98 | There are a couple of problems which are not MorphOS related but more Vim and 99 | UN*X related. When starting up Vim in ram: it complains with a nag requester 100 | from MorphOS please simply ignore it. Another problem is when running Vim as 101 | is some plugins will cause a few problems which you can ignore as well. 102 | Hopefully someone will be fixing it over the time. 103 | 104 | To pass all these problems for now you can either run: 105 | 106 | vim 107 | 108 | or if you want to run Vim plain and enjoy the motion of Helpfiles etc. it then 109 | would be better to enter: 110 | 111 | vim --noplugins 112 | 113 | 114 | Installation ~ 115 | 116 | 1) Please copy the binary 'VIM' file to c: 117 | 2) Get the Vim runtime package from: 118 | 119 | ftp://ftp.vim.org/pub/vim/amiga/vim62rt.tgz 120 | 121 | and unpack it in your 'Apps' directory of the MorphOS installation. For me 122 | this would create following directory hierarchy: 123 | 124 | MorphOS:Apps/Vim/Vim62/... 125 | 126 | 3) Add the following lines to your s:shell-startup (Important!). 127 | 128 | ;Begin VIM 129 | Set VIM=MorphOS:Apps/Vim/Vim62 130 | Assign HOME: "" 131 | ;End VIM 132 | 133 | 4) Copy the '.vimrc' file to s: 134 | 135 | 5) There is also a file named 'color-sequence' included in this archive. This 136 | will set the MorphOS Shell to show ANSI colors. Please copy the file to s: 137 | and change the s:shell-startup to: 138 | 139 | ;Begin VIM 140 | Set VIM=MorphOS:Apps/Vim/Vim62 141 | Assign HOME: "" 142 | Execute S:Color-Sequence 143 | Cls 144 | ;End VIM 145 | 146 | 147 | vim:tw=78:ts=8:noet:ft=help:norl: 148 | -------------------------------------------------------------------------------- /en/os_beos.txt: -------------------------------------------------------------------------------- 1 | *os_beos.txt* For Vim version 9.1. Last change: 2020 Jun 07 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | *beos* *BeOS* *BeBox* 8 | This file used to contain particularities for the BeOS port of Vim. 9 | 10 | The BeOS support was removed in patch 8.2.0849. 11 | 12 | 13 | vim:tw=78:ts=8:noet:ft=help:norl: 14 | -------------------------------------------------------------------------------- /en/os_mint.txt: -------------------------------------------------------------------------------- 1 | *os_mint.txt* For Vim version 9.1. Last change: 2020 Jul 14 2 | 3 | 4 | VIM REFERENCE MANUAL by Jens M. Felderhoff 5 | 6 | 7 | *MiNT* *Atari* 8 | The Atari MiNT support was removed with patch 8.2.1215. It probably didn't 9 | work at that time, since the code was old and not maintained. 10 | 11 | 12 | Originally added by: Jens M. Felderhoff, e-mail: 13 | 14 | 15 | vim:tw=78:ts=8:noet:ft=help:norl: 16 | -------------------------------------------------------------------------------- /en/os_msdos.txt: -------------------------------------------------------------------------------- 1 | *os_msdos.txt* For Vim version 9.1. Last change: 2016 Feb 26 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | *msdos* *ms-dos* *MSDOS* *MS-DOS* 8 | This file used to contain the particularities for the MS-DOS version of Vim. 9 | MS-DOS support was removed in patch 7.4.1399. If you want to use it you will 10 | need to get a version older than that. Note that the MS-DOS version doesn't 11 | work, there is not enough memory. The DOS32 version (using DJGPP) might still 12 | work on older systems. 13 | 14 | 15 | vim:tw=78:ts=8:noet:ft=help:norl: 16 | -------------------------------------------------------------------------------- /en/os_os2.txt: -------------------------------------------------------------------------------- 1 | *os_os2.txt* For Vim version 9.1. Last change: 2015 Dec 31 2 | 3 | 4 | VIM REFERENCE MANUAL by Paul Slootman 5 | 6 | 7 | *os2* *OS2* *OS/2* 8 | This file used to contain the particularities for the OS/2 version of Vim. 9 | 10 | The OS/2 support was removed in patch 7.4.1008. 11 | 12 | 13 | vim:tw=78:ts=8:noet:ft=help:norl: 14 | -------------------------------------------------------------------------------- /en/os_qnx.txt: -------------------------------------------------------------------------------- 1 | *os_qnx.txt* For Vim version 9.1. Last change: 2005 Mar 29 2 | 3 | 4 | VIM REFERENCE MANUAL by Julian Kinraid 5 | 6 | 7 | *QNX* *qnx* 8 | 9 | 1. General |qnx-general| 10 | 2. Compiling Vim |qnx-compiling| 11 | 3. Terminal support |qnx-terminal| 12 | 4. Photon GUI |photon-gui| 13 | 5. Photon fonts |photon-fonts| 14 | 6. Bugs & things To Do 15 | 16 | ============================================================================== 17 | 18 | 1. General *qnx-general* 19 | 20 | Vim on QNX behaves much like other unix versions. |os_unix.txt| 21 | 22 | 23 | 2. Compiling Vim *qnx-compiling* 24 | 25 | Vim can be compiled using the standard configure/make approach. If you want to 26 | compile for X11, pass the --with-x option to configure. Otherwise, running 27 | ./configure without any arguments or passing --enable-gui=photon, will compile 28 | vim with the Photon gui support. Run ./configure --help , to find out other 29 | features you can enable/disable. 30 | 31 | 32 | 3. Terminal support *qnx-terminal* 33 | 34 | Vim has support for the mouse and clipboard in a pterm, if those options 35 | are compiled in, which they are normally. 36 | 37 | The options that affect mouse support are |'mouse'| and |'ttymouse'|. When 38 | using the mouse, only simple left and right mouse clicking/dragging is 39 | supported. If you hold down shift, ctrl, or alt while using the mouse, pterm 40 | will handle the mouse itself. It will make a selection, separate from what 41 | vim's doing. 42 | 43 | When the mouse is in use, you can press Alt-RightMouse to open the pterm menu. 44 | To turn the mouse off in vim, set the mouse option to nothing, set mouse= 45 | 46 | 47 | 4. Photon GUI *photon-gui* 48 | 49 | To start the gui for vim, you need to run either gvim or vim -g, otherwise 50 | the terminal version will run. For more info - |gui-x11-start| 51 | 52 | Supported features: 53 | :browse command |:browse| 54 | :confirm command |:confirm| 55 | Cursor blinking |'guicursor'| 56 | Menus, popup menus and menu priorities |:menu| 57 | |popup-menu| 58 | |menu-priority| 59 | Toolbar |gui-toolbar| 60 | |'toolbar'| 61 | Font selector (:set guifont=*) |photon-fonts| 62 | Mouse focus |'mousefocus'| 63 | Mouse hide |'mousehide'| 64 | Mouse cursor shapes |'mouseshape'| 65 | Clipboard |gui-clipboard| 66 | 67 | Unfinished features: 68 | Various international support, such as Farsi & Hebrew support, 69 | different encodings, etc. 70 | 71 | This help file 72 | 73 | Unsupported features: 74 | Find & Replace window |:promptfind| 75 | Tearoff menus 76 | 77 | Other things which I can't think of so I can't list them 78 | 79 | 80 | 5. Fonts *photon-fonts* 81 | 82 | You set fonts in the gui with the guifont option > 83 | :set guifont=Lucida\ Terminal 84 | < 85 | The font must be a monospace font, and any spaces in the font name must be 86 | escaped with a '\'. The default font used is PC Terminal, size 8. Using 87 | '*' as the font name will open a standard Photon font selector where you can 88 | select a font. 89 | 90 | Following the name, you can include optional settings to control the size and 91 | style of the font, each setting separated by a ':'. Not all fonts support the 92 | various styles. 93 | 94 | The options are, 95 | s{size} Set the size of the font to {size} 96 | b Bold style 97 | a Use antialiasing 98 | i Italic style 99 | 100 | Examples: 101 | 102 | Set the font to monospace size 10 with antialiasing > 103 | :set guifont=monospace:s10:a 104 | < 105 | Set the font to Courier size 12, with bold and italics > 106 | :set guifont=Courier:s12:b:i 107 | < 108 | Select a font with the requester > 109 | :set guifont=* 110 | < 111 | 112 | 113 | 6. Bugs & things To Do 114 | 115 | Known problems: 116 | - Vim hangs sometimes when running an external program. Workaround: 117 | put this line in your |vimrc| file: > 118 | set noguipty 119 | 120 | Bugs: 121 | - Still a slight problem with menu highlighting. 122 | - When using phditto/phinows/etc., if you are using a font that 123 | doesn't support the bold attribute, when vim attempts to draw 124 | bold text it will be all messed up. 125 | - The cursor can sometimes be hard to see. 126 | - A number of minor problems that can fixed. :) 127 | 128 | Todo: 129 | - Improve multi-language support. 130 | - Options for setting the fonts used in the menu and toolbar. 131 | - Find & Replace dialog. 132 | - The clientserver features. 133 | - Maybe tearoff menus. 134 | 135 | - Replace usage of fork() with spawn() when launching external 136 | programs. 137 | 138 | vim:tw=78:sw=4:ts=8:noet:ft=help:norl: 139 | -------------------------------------------------------------------------------- /en/os_risc.txt: -------------------------------------------------------------------------------- 1 | *os_risc.txt* For Vim version 9.1. Last change: 2011 May 10 2 | 3 | 4 | VIM REFERENCE MANUAL by Thomas Leonard 5 | 6 | 7 | *riscos* *RISCOS* *RISC-OS* 8 | The RISC OS support has been removed from Vim with patch 7.3.187. 9 | If you would like to use Vim on RISC OS get the files from before that patch. 10 | 11 | 12 | vim:tw=78:ts=8:noet:ft=help:norl: 13 | -------------------------------------------------------------------------------- /en/os_unix.txt: -------------------------------------------------------------------------------- 1 | *os_unix.txt* For Vim version 9.1. Last change: 2022 Nov 25 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | *unix* *Unix* 8 | This file contains the particularities for the Unix version of Vim. 9 | 10 | For compiling Vim on Unix see "INSTALL" and "Makefile" in the src directory. 11 | 12 | The default help file name is "/usr/local/lib/vim/help.txt" 13 | The files "$HOME/.vimrc" and "$HOME/.exrc" are used instead of "s:.vimrc" and 14 | "s:.exrc". Additionally "/usr/local/etc/vimrc" is used first. 15 | If "/usr/local/share" exists it is used instead of "/usr/local/lib". 16 | 17 | Temporary files (for filtering) are put in "/tmp". If you want to place them 18 | somewhere else, set the environment variable $TMPDIR to the directory you 19 | prefer. 20 | 21 | With wildcard expansion you can use '~' (home directory) and '$' 22 | (environment variable). 23 | 24 | *fork* *spoon* 25 | For executing external commands fork()/exec() is used when possible, otherwise 26 | system() is used, which is a bit slower. The output of ":version" includes 27 | |+fork| when fork()/exec() is used, |+system()| when system() is used. This 28 | can be changed at compile time. 29 | (For forking of the GUI version see |gui-fork|.) 30 | 31 | For historic reasons terminal updating under Unix is expected to be slow (e.g. 32 | serial line terminal, shell window in suntools), the 'showcmd' and 'ruler' 33 | options are off by default. If you have a fast terminal, try setting them 34 | on: > 35 | set showcmd ruler 36 | 37 | When using Vim in an xterm the mouse clicks can be used by Vim by setting 38 | 'mouse' to "a". If there is access to an X-server gui style copy/paste will 39 | be used and visual feedback will be provided while dragging with the mouse. 40 | If you then still want the xterm copy/paste with the mouse, press the shift 41 | key when using the mouse. See |mouse-using|. Visual feedback while dragging 42 | can also be achieved via the 'ttymouse' option if your xterm is new enough. 43 | 44 | *terminal-colors* 45 | To use colors in Vim you can use the following example (if your terminal 46 | supports colors, but "T_Co" is empty or zero): > 47 | :set t_me=^[[0;1;36m " normal mode (undoes t_mr and t_md) 48 | :set t_mr=^[[0;1;33;44m " reverse (invert) mode 49 | :set t_md=^[[1;33;41m " bold mode 50 | :set t_se=^[[1;36;40m " standout end 51 | :set t_so=^[[1;32;45m " standout mode 52 | :set t_ue=^[[0;1;36m " underline end 53 | :set t_us=^[[1;32m " underline mode start 54 | [the ^[ is an , type CTRL-V to enter it] 55 | 56 | For real color terminals the ":highlight" command can be used. 57 | 58 | The file "tools/vim132" is a shell script that can be used to put Vim in 132 59 | column mode on a vt100 and lookalikes. 60 | 61 | vim:tw=78:ts=8:noet:ft=help:norl: 62 | -------------------------------------------------------------------------------- /en/pi_gzip.txt: -------------------------------------------------------------------------------- 1 | *pi_gzip.txt* For Vim version 9.1. Last change: 2025 Mar 05 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | Editing compressed files with Vim *gzip* *bzip2* *compress* 8 | 9 | 1. Autocommands |gzip-autocmd| 10 | 11 | The functionality mentioned here is a |standard-plugin|. 12 | This plugin is only available if 'compatible' is not set. 13 | You can avoid loading this plugin by setting the "loaded_gzip" variable: > 14 | :let loaded_gzip = 1 15 | < 16 | *g:gzip_exec* 17 | 18 | For security reasons, one may prevent that Vim runs executables automatically 19 | when opening a buffer. This option (default: "1") can be used to prevent 20 | executing the executables command when set to "0": > 21 | :let g:gzip_exec = 0 22 | < 23 | 24 | ============================================================================== 25 | 1. Autocommands *gzip-autocmd* 26 | 27 | The plugin installs autocommands to intercept reading and writing of files 28 | with these extensions: 29 | 30 | extension compression ~ 31 | *.bz2 bzip2 32 | *.bz3 bzip3 33 | *.gz gzip 34 | *.lz lzip 35 | *.lz4 lz4 36 | *.lzma lzma 37 | *.xz xz 38 | *.Z compress (Lempel-Ziv) 39 | *.zst zstd 40 | 41 | That's actually the only thing you need to know. There are no options. 42 | 43 | After decompressing a file, the filetype will be detected again. This will 44 | make a file like "foo.c.gz" get the "c" filetype. 45 | 46 | If you have 'patchmode' set, it will be appended after the extension for 47 | compression. Thus editing the patchmode file will not give you the automatic 48 | decompression. You have to rename the file if you want this. 49 | 50 | ============================================================================== 51 | vim:tw=78:ts=8:noet:ft=help:norl: 52 | -------------------------------------------------------------------------------- /en/pi_logipat.txt: -------------------------------------------------------------------------------- 1 | *pi_logipat.txt* Logical Patterns May 01, 2019 2 | 3 | Author: Charles E. Campbell 4 | Copyright: (c) 2004-2016 by Charles E. Campbell *logiPat-copyright* 5 | The VIM LICENSE applies to LogiPat.vim and LogiPat.txt 6 | (see |copyright|) except use "LogiPat" instead of "Vim" 7 | No warranty, express or implied. Use At-Your-Own-Risk. 8 | 9 | ============================================================================== 10 | 1. Contents *logiPat* *logiPat-contents* 11 | 12 | 1. Contents.................: |logiPat-contents| 13 | 2. LogiPat Manual...........: |logiPat-manual| 14 | 3. LogiPat Examples.........: |logiPat-examples| 15 | 4. Caveat...................: |logiPat-caveat| 16 | 5. LogiPat History..........: |logiPat-history| 17 | 18 | 19 | ============================================================================== 20 | 2. LogiPat Manual *logiPat-manual* *logiPat-man* 21 | 22 | *logiPat-arg* *logiPat-input* *logiPat-pattern* *logiPat-operators* 23 | Boolean logic patterns are composed of 24 | 25 | operators ! = not 26 | | = logical-or 27 | & = logical-and 28 | grouping ( ... ) 29 | patterns "pattern" 30 | 31 | *logiPat-cmd* 32 | :LogiPat {boolean-logic pattern} *:LogiPat* 33 | :LogiPat is a command which takes a boolean-logic 34 | argument (|logiPat-arg|). 35 | 36 | :LP {boolean-logic pattern} *:LP* 37 | :LP is a shorthand command version of :LogiPat 38 | (|logiPat-cmd|). 39 | 40 | :LPE {boolean-logic pattern} *:LPE* 41 | No search is done, but the conversion from the 42 | boolean logic pattern to the regular expression 43 | is performed and echoed onto the display. 44 | 45 | :LogiPatFlags {search flags} *LogiPat-flags* 46 | LogiPat uses the |search()| command. The flags 47 | passed to that call to search() may be specified 48 | by the :LogiPatFlags command. 49 | 50 | :LPF {search flags} *:LPF* 51 | :LPF is a shorthand version of :LogiPatFlags. 52 | 53 | :let pat=LogiPat({boolean-logic pattern}) *LogiPat()* 54 | If one calls LogiPat() directly, no search 55 | is done, but the transformation from the boolean 56 | logic pattern into a regular expression pattern 57 | is performed and returned. 58 | 59 | To get a " inside a pattern, as opposed to having it delimit 60 | the pattern, double it. 61 | 62 | 63 | ============================================================================== 64 | 3. LogiPat Examples *logiPat-examples* 65 | 66 | LogiPat takes Boolean logic arguments and produces a regular 67 | expression which implements the choices. A series of examples 68 | follows: 69 | > 70 | :LogiPat "abc" 71 | < will search for lines containing the string :abc: 72 | > 73 | :LogiPat "ab""cd" 74 | < will search for lines containing the string :ab"cd: 75 | > 76 | :LogiPat !"abc" 77 | < will search for lines which don't contain the string :abc: 78 | > 79 | :LogiPat "abc"|"def" 80 | < will search for lines which contain either the string 81 | :abc: or the string :def: 82 | > 83 | :LogiPat !("abc"|"def") 84 | < will search for lines which don't contain either 85 | of the strings :abc: or :def: 86 | > 87 | :LogiPat "abc"&"def" 88 | < will search for lines which contain both of the strings 89 | :abc: and :def: 90 | > 91 | :let pat= LogiPat('!"abc"') 92 | < will return the regular expression which will match 93 | all lines not containing :abc: . The double quotes 94 | are needed to pass normal patterns to LogiPat, and 95 | differentiate such patterns from boolean logic 96 | operators. 97 | 98 | 99 | ============================================================================== 100 | 4. Caveat *logiPat-caveat* 101 | 102 | The "not" operator may be fragile; ie. it may not always play well 103 | with the & (logical-and) and | (logical-or) operators. Please try out 104 | your patterns, possibly with :set hls, to insure that what is matching 105 | is what you want. 106 | 107 | 108 | ============================================================================== 109 | 5. LogiPat History *logiPat-history* 110 | 111 | v4 Jun 22, 2015 * LogiPat has been picked up by Bram M for standard 112 | plugin distribution; hence the name change 113 | v3 Sep 25, 2006 * LP_Or() fixed; it now encapsulates its output 114 | in \%(...\) parentheses 115 | Dec 12, 2011 * |:LPE| added 116 | * "" is mapped to a single " and left inside patterns 117 | v2 May 31, 2005 * LPF and LogiPatFlags commands weren't working 118 | v1 May 23, 2005 * initial release 119 | 120 | 121 | ============================================================================== 122 | vim:tw=78:ts=8:noet:ft=help 123 | -------------------------------------------------------------------------------- /en/pi_paren.txt: -------------------------------------------------------------------------------- 1 | *pi_paren.txt* For Vim version 9.1. Last change: 2024 Nov 04 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | Highlighting matching parens *matchparen* 8 | 9 | The functionality mentioned here is a |standard-plugin|. 10 | This plugin is only available if 'compatible' is not set. 11 | 12 | You can avoid loading this plugin by setting the "loaded_matchparen" variable: > 13 | 14 | :let loaded_matchparen = 1 15 | 16 | The plugin installs CursorMoved, CursorMovedI and WinEnter autocommands to 17 | redefine the match highlighting. 18 | 19 | *:NoMatchParen* *:DoMatchParen* 20 | To disable the plugin after it was loaded use this command: > 21 | 22 | :NoMatchParen 23 | 24 | And to enable it again: > 25 | 26 | :DoMatchParen 27 | 28 | The highlighting used is MatchParen. You can specify different colors with 29 | the ":highlight" command. Example: > 30 | 31 | :hi MatchParen ctermbg=blue guibg=lightblue 32 | 33 | By default the plugin will highlight both the paren under the cursor and the 34 | matching one using the |hl-MatchParen| highlighting group. This may result in 35 | the cursor briefly disappearing from the screen as the MatchParen colors take 36 | over the cursor highlight. To prevent this from happening and have the plugin 37 | only highlight the matching paren and not the one under the cursor 38 | (effectively leaving the cursor style unchanged), you can set the 39 | "matchparen_disable_cursor_hl" variable: > 40 | 41 | :let matchparen_disable_cursor_hl = 1 42 | 43 | The characters to be matched come from the 'matchpairs' option. You can 44 | change the value to highlight different matches. Note that not everything is 45 | possible. For example, you can't highlight single or double quotes, because 46 | the start and end are equal. 47 | 48 | The syntax highlighting attributes are used. When the cursor currently is not 49 | in a string or comment syntax item, then matches inside string and comment 50 | syntax items are ignored. Any syntax items with "string" or "comment" 51 | somewhere in their name are considered string or comment items. 52 | 53 | The search is limited to avoid a delay when moving the cursor. The limits 54 | are: 55 | - What is visible in the window. 56 | - 100 lines above or below the cursor to avoid a long delay when there are 57 | closed folds. 58 | - 'synmaxcol' times 2 bytes before or after the cursor to avoid a delay 59 | in a long line with syntax highlighting. 60 | - A timeout of 300 msec (60 msec in Insert mode). This can be changed with 61 | the "g:matchparen_timeout" and "g:matchparen_insert_timeout" variables and 62 | their buffer-local equivalents "b:matchparen_timeout" and 63 | "b:matchparen_insert_timeout". 64 | 65 | If you would like the |%| command to work better, the matchit plugin can be 66 | used, see |matchit-install|. This plugin also helps to skip matches in 67 | comments. This is unrelated to the matchparen highlighting, they use a 68 | different mechanism. 69 | 70 | ============================================================================== 71 | vim:tw=78:ts=8:noet:ft=help:norl: 72 | -------------------------------------------------------------------------------- /en/pi_spec.txt: -------------------------------------------------------------------------------- 1 | *pi_spec.txt* For Vim version 9.1. Last change: 2006 Apr 24 2 | 3 | by Gustavo Niemeyer ~ 4 | 5 | This is a filetype plugin to work with rpm spec files. 6 | 7 | Currently, this Vim plugin allows you to easily update the %changelog 8 | section in RPM spec files. It will even create a section for you if it 9 | doesn't exist yet. If you've already inserted an entry today, it will 10 | give you the opportunity to just add a new item in today's entry. If you 11 | don't provide a format string (|spec_chglog_format|), it'll ask you an 12 | email address and build a format string by itself. 13 | 14 | 1. How to use it |spec-how-to-use-it| 15 | 2. Customizing |spec-customizing| 16 | 17 | ============================================================================== 18 | 1. How to use it *spec-how-to-use-it* 19 | 20 | The spec_chglog plugin provides a map like the following: 21 | 22 | :map c SpecChangelog 23 | 24 | It means that you may run the plugin inside a spec file by pressing 25 | your maplocalleader key (default is '\') plus 'c'. If you do not have 26 | |spec_chglog_format| set, the plugin will ask you for an email address 27 | to use in this edit session. 28 | 29 | Every time you run the plugin, it will check to see if the last entry in the 30 | changelog has been written today and by you. If the entry matches, it will 31 | just insert a new changelog item, otherwise it will create a new changelog 32 | entry. If you are running with |spec_chglog_release_info| enabled, it will 33 | also check if the name, version and release matches. The plugin is smart 34 | enough to ask you if it should update the package release, if you have not 35 | done so. 36 | 37 | Setting a map *spec-setting-a-map* 38 | ------------- 39 | 40 | As you should know, you can easily set a map to access any Vim command (or 41 | anything, for that matter). If you don't like the default map of 42 | c, you may just set up your own key. The following line 43 | shows you how you could do this in your .vimrc file, mapping the plugin to 44 | the key: 45 | 46 | au FileType spec map SpecChangelog 47 | 48 | Note: the plugin will respect your desire to change the default mapping 49 | and won't set it. 50 | 51 | This command will add a map only in the spec file buffers. 52 | 53 | 54 | ============================================================================== 55 | 2. Customizing *spec-customizing* 56 | 57 | The format string *spec_chglog_format* 58 | ----------------- 59 | 60 | You can easily customize how your spec file entry will look like. To do 61 | this just set the variable "spec_chglog_format" in your .vimrc file like 62 | this: > 63 | 64 | let spec_chglog_format = "%a %b %d %Y My Name " 65 | 66 | Note that "%a %b %d %Y" is the most used time format. If you don't provide 67 | a format string, when you run the SpecChangelog command for the first 68 | time, it will ask you an email address and build the |spec_chglog_format| 69 | variable for you. This way, you will only need to provide your email 70 | address once. 71 | 72 | To discover which format options you can use, take a look at the strftime() 73 | function man page. 74 | 75 | Where to insert new items *spec_chglog_prepend* 76 | ------------------------- 77 | 78 | The plugin will usually insert new %changelog entry items (note that it's 79 | not the entry itself) after the existing ones. If you set the 80 | spec_chglog_prepend variable > 81 | 82 | let spec_chglog_prepend = 1 83 | 84 | it will insert new items before the existing ones. 85 | 86 | Inserting release info *spec_chglog_release_info* 87 | ---------------------- 88 | 89 | If you want, the plugin may automatically insert release information 90 | on each changelog entry. One advantage of turning this feature on is 91 | that it may control if the release has been updated after the last 92 | change in the package or not. If you have not updated the package 93 | version or release, it will ask you if it should update the package 94 | release for you. To turn this feature on, just insert the following 95 | code in your .vimrc: > 96 | 97 | let spec_chglog_release_info = 1 98 | 99 | Then, the first item in your changelog entry will be something like: > 100 | 101 | + name-1.0-1cl 102 | 103 | If you don't like the release updating feature and don't want to answer 104 | "No" each time it detects an old release, you may disable it with > 105 | 106 | let spec_chglog_never_increase_release = 1 107 | 108 | 109 | Good luck!! 110 | 111 | vim:tw=78:ts=8:noet:ft=help:norl: 112 | -------------------------------------------------------------------------------- /en/pi_tutor.txt: -------------------------------------------------------------------------------- 1 | *pi_tutor.txt* For Vim version 9.1. Last change: 2025 May 19 2 | 3 | INTERACTIVE TUTORIALS FOR VIM *vim-tutor-mode* 4 | 5 | vim-tutor-mode provides a system to follow and create interactive tutorials 6 | for vim and third party plugins. It replaces the venerable `vimtutor` system. 7 | 8 | Original Author: Felipe Morales 9 | 10 | ============================================================================= 11 | 1. Usage *vim-tutor-usage* 12 | 13 | vim-tutor-mode tutorials are hypertext documents, they have rich text and 14 | contain links. To stand out from the rest of the text, links are underlined. 15 | You can follow them by placing the cursor over them and pressing , or 16 | by double-clicking them. 17 | 18 | 1.1 Commands 19 | ------------ 20 | *:Tutor* 21 | :Tutor [tutorial] Opens a tutorial. Command-line completion for 22 | [tutorial] is provided, the candidates are a list of 23 | ".tutor" files found in the "tutor//" folder in 24 | the 'runtimepath'. Tutorials prefixed with "vim-" 25 | will always be shown first. 26 | 27 | If no [tutorial] is provided, the command starts the 28 | "vim-01-beginner" tutorial, which is equivalent to 29 | Vim's `vimtutor`, chapter 1. 30 | 31 | Uses the translated tutorial for the current message 32 | language if possible (|v:lang|), e.g. to open the 33 | chapter 1 of the Italian tutor, use: > 34 | 35 | :lang it_IT.UTF-8 36 | :Tutor 37 | < 38 | ============================================================================= 39 | 2. Creating tutorials *vim-tutor-create* 40 | 41 | Writing vim-tutor-mode tutorials is easy. For an overview of the format used, 42 | please consult the "tutor.tutor" file: > 43 | 44 | :Tutor tutor 45 | < 46 | New tutorials must be placed in the 'tutor/' folder in the 'runtimepath' 47 | to be detected by the :Tutor command. 48 | 49 | It is recommended to use a less formal style when writing tutorials than in 50 | regular documentation (unless the content requires it). 51 | 52 | ============================================================================= 53 | vim:tw=78:ts=8:noet:ft=help:norl: 54 | -------------------------------------------------------------------------------- /en/rileft.txt: -------------------------------------------------------------------------------- 1 | *rileft.txt* For Vim version 9.1. Last change: 2022 Oct 12 2 | 3 | 4 | VIM REFERENCE MANUAL by Avner Lottem 5 | updated by Nadim Shaikli 6 | 7 | 8 | Right to Left display mode for Vim *rileft* 9 | 10 | 11 | These functions were originally created by Avner Lottem: 12 | E-mail: alottem@iil.intel.com 13 | Phone: +972-4-8307322 14 | 15 | *E26* 16 | {only available when compiled with the |+rightleft| feature} 17 | 18 | 19 | Introduction 20 | ------------ 21 | Some languages such as Arabic, Farsi, Hebrew (among others) require the 22 | ability to display their text from right-to-left. Files in those languages 23 | are stored conventionally and the right-to-left requirement is only a 24 | function of the display engine (per the Unicode specification). In 25 | right-to-left oriented files the characters appear on the screen from 26 | right to left. 27 | 28 | Bidirectionality (or bidi for short) is what Unicode offers as a full 29 | solution to these languages. Bidi offers the user the ability to view 30 | both right-to-left as well as left-to-right text properly at the same time 31 | within the same window. Vim currently, due to simplicity, does not offer 32 | bidi and is merely opting to present a functional means to display/enter/use 33 | right-to-left languages. An older hybrid solution in which direction is 34 | encoded for every character (or group of characters) are not supported either 35 | as this kind of support is out of the scope of a simple addition to an 36 | existing editor (and it's not sanctioned by Unicode either). 37 | 38 | As many people working on the code do not use the right-to-left mode, this 39 | feature may not work in some situations. If you can describe what is wrong 40 | and how it would work when fixed, please create an issue on github, see 41 | |bug-reports|. 42 | 43 | 44 | Highlights 45 | ---------- 46 | o Editing left-to-right files as in the original Vim, no change. 47 | 48 | o Viewing and editing files in right-to-left windows. File orientation 49 | is per window, so it is possible to view the same file in right-to-left 50 | and left-to-right modes, simultaneously. (Useful for editing mixed files 51 | in which both right-to-left and left-to-right text exist). 52 | 53 | o Compatibility to the original Vim. Almost all features work in 54 | right-to-left mode (see Bugs below). 55 | 56 | o Backing from reverse insert mode to the correct place in the file 57 | (if possible). 58 | 59 | o No special terminal with right-to-left capabilities is required. The 60 | right-to-left changes are completely hardware independent. 61 | 62 | o Many languages use and require right-to-left support. These languages 63 | can quite easily be supported given the inclusion of their required 64 | keyboard mappings and some possible minor code change. Some of the 65 | current supported languages include - |arabic.txt|, |farsi.txt| and 66 | |hebrew.txt|. 67 | 68 | 69 | Of Interest... 70 | -------------- 71 | 72 | o Invocations 73 | ----------- 74 | + 'rightleft' ('rl') sets window orientation to right-to-left. 75 | + 'delcombine' ('deco'), boolean, if editing UTF-8 encoded languages, 76 | allows one to remove a composing character which gets superimposed 77 | on those that preceded them (some languages require this). 78 | + 'rightleftcmd' ('rlc') sets the command-line within certain modes 79 | (such as search) to be utilized in right-to-left orientation as well. 80 | 81 | o Typing backwards *ins-reverse* 82 | ---------------- 83 | In lieu of using the full-fledged 'rightleft' option, one can opt for 84 | reverse insertion. When the 'revins' (reverse insert) option is set, 85 | inserting happens backwards. This can be used to type right-to-left 86 | text. When inserting characters the cursor is not moved and the text 87 | moves rightwards. A deletes the character under the cursor. 88 | CTRL-W and CTRL-U also work in the opposite direction. , CTRL-W 89 | and CTRL-U do not stop at the start of insert or end of line, no matter 90 | how the 'backspace' option is set. 91 | 92 | There is no reverse replace mode (yet). 93 | 94 | If the 'showmode' option is set, "-- REVERSE INSERT --" will be shown 95 | in the status line when reverse Insert mode is active. 96 | 97 | o Pasting when in a rightleft window 98 | ---------------------------------- 99 | When cutting text with the mouse and pasting it in a rightleft window 100 | the text will be reversed, because the characters come from the cut buffer 101 | from the left to the right, while inserted in the file from the right to 102 | the left. In order to avoid it, toggle 'revins' before pasting. 103 | 104 | 105 | Bugs 106 | ---- 107 | o Does not handle CTRL-A and CTRL-X commands (add and subtract) correctly 108 | when in rightleft window. 109 | 110 | o Does not support reverse insert and rightleft modes on the command-line. 111 | However, functionality of the editor is not reduced, because it is 112 | possible to enter mappings, abbreviations and searches typed from the 113 | left to the right on the command-line. 114 | 115 | o Somewhat slower in right-to-left mode, because right-to-left motion is 116 | emulated inside Vim, not by the controlling terminal. 117 | 118 | o When both 'rightleft' and 'revins' are on: 'textwidth' does not work. 119 | Lines do not wrap at all; you just get a single, long line. 120 | 121 | o There is no full bidirectionality (bidi) support. 122 | 123 | 124 | vim:tw=78:ts=8:noet:ft=help:norl: 125 | -------------------------------------------------------------------------------- /en/russian.txt: -------------------------------------------------------------------------------- 1 | *russian.txt* For Vim version 9.1. Last change: 2006 Apr 24 2 | 3 | 4 | VIM REFERENCE MANUAL by Vassily Ragosin 5 | 6 | 7 | Russian language localization and support in Vim *russian* *Russian* 8 | 9 | 1. Introduction |russian-intro| 10 | 2. Russian keymaps |russian-keymap| 11 | 3. Localization |russian-l18n| 12 | 4. Known issues |russian-issues| 13 | 14 | =============================================================================== 15 | 1. Introduction *russian-intro* 16 | 17 | Russian language is supported perfectly well in Vim. You can type and view 18 | Russian text just as any other, without the need to tweak the settings. 19 | 20 | =============================================================================== 21 | 2. Russian keymaps *russian-keymap* 22 | 23 | To switch between languages you can use your system native keyboard switcher, 24 | or use one of the Russian keymaps, included in the Vim distribution. For 25 | example, 26 | > 27 | :set keymap=russian-jcukenwin 28 | < 29 | In the latter case, you can switch between languages even if you do not have 30 | system Russian keyboard or independently from a system-wide keyboard settings. 31 | See 'keymap'. You can also map a key to switch between keyboards, if you 32 | choose the latter option. See |:map|. 33 | 34 | For your convenience, to avoid switching between keyboards, when you need to 35 | enter Normal mode command, you can also set 'langmap' option: 36 | > 37 | :set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ;ABCDEFGHIJKLMNOPQRSTUVWXYZ, 38 | фисвуапршолдьтщзйкыегмцчня;abcdefghijklmnopqrstuvwxyz 39 | 40 | This is in utf-8, you cannot read this if your 'encoding' is not utf-8. 41 | You have to type this command in one line, it is wrapped for the sake of 42 | readability. 43 | 44 | =============================================================================== 45 | 3. Localization *russian-l18n* 46 | 47 | If you wish to use messages, help files, menus and other items translated to 48 | Russian, you will need to install the RuVim Language Pack, available in 49 | different codepages from 50 | 51 | http://www.sourceforge.net/projects/ruvim/ 52 | 53 | Make sure that your Vim is at least 6.2.506 and use ruvim 0.5 or later for 54 | automatic installs. Vim also needs to be compiled with |+gettext| feature for 55 | user interface items translations to work. 56 | 57 | After downloading an archive from RuVim project, unpack it into your 58 | $VIMRUNTIME directory. We recommend using UTF-8 archive. 59 | 60 | In order to use the Russian documentation, make sure you have set the 61 | 'helplang' option to "ru". 62 | 63 | =============================================================================== 64 | 4. Known issues *russian-issues* 65 | 66 | -- If you are using Russian message translations in Win32 console, then 67 | you may see the output produced by "vim --help", "vim --version" commands 68 | and Win32 console window title appearing in a wrong codepage. This problem 69 | is related to a bug in GNU gettext library and may be fixed in the future 70 | releases of gettext. 71 | 72 | =============================================================================== 73 | vim:tw=78:ts=8:noet:ft=help:norl: 74 | -------------------------------------------------------------------------------- /en/sponsor.txt: -------------------------------------------------------------------------------- 1 | *sponsor.txt* For Vim version 9.1. Last change: 2024 Aug 14 2 | 3 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar 5 | 6 | 7 | 8 | SPONSOR VIM DEVELOPMENT *sponsor* 9 | 10 | Fixing bugs and adding new features takes a lot of time and effort. To show 11 | your appreciation for the work and motivate developers to continue working on 12 | Vim please send a donation. 13 | 14 | The money you donated will be mainly used to help children in Uganda. See 15 | |uganda|. But at the same time donations increase the development team 16 | motivation to keep working on Vim! 17 | 18 | For the most recent information about sponsoring look on the Vim web site: 19 | 20 | http://www.vim.org/sponsor/ 21 | 22 | More explanations can be found in the |sponsor-faq|. 23 | 24 | 25 | REGISTERED VIM USER *register* 26 | 27 | You can become a registered Vim user by sending at least 10 euro. This works 28 | similar to sponsoring Vim, see |sponsor| above. Registration was made 29 | possible for the situation where your boss or bookkeeper may be willing to 30 | register software, but does not like the terms "sponsoring" and "donation". 31 | 32 | More explanations can be found in the |register-faq|. 33 | 34 | 35 | VOTE FOR FEATURES *vote-for-features* 36 | 37 | Note: Voting for features has been discontinued since the passing of |Bram| in 38 | 2023. The following two links still work, but they are no longer updated. So 39 | they now only provide a historic view as of summer 2023. 40 | 41 | The voting results appear on the results page, which is visible for everybody: 42 | http://www.vim.org/sponsor/vote_results.php 43 | 44 | Additionally, once you have sent 100 euro or more in total, your name appears 45 | in the "Vim hall of honour": http://www.vim.org/sponsor/hall_of_honour.php 46 | But only if you enable this on your account page. 47 | 48 | 49 | HOW TO SEND MONEY *send-money* 50 | 51 | Credit card Through PayPal, see the PayPal site for information: 52 | https://www.paypal.com/ 53 | The e-mail address for sending sponsorship money is: 54 | donate@vim.org 55 | The e-mail address for Vim registration is: 56 | register@vim.org 57 | Using Euro is preferred, other currencies are also accepted. 58 | In Euro countries a bank transfer is preferred, this has lower 59 | costs. 60 | 61 | Other methods See |iccf-donations|. 62 | Include "Vim sponsor" or "Vim registration" in the comment of 63 | your money transfer. 64 | 65 | 66 | QUESTIONS AND ANSWERS *sponsor-faq* *register-faq* 67 | 68 | Why should I give money? 69 | 70 | If you do not show your appreciation for Vim, the development team will be 71 | less motivated to fix bugs and add new features. They will do something else 72 | instead. 73 | 74 | 75 | How much money should I send? 76 | 77 | That is up to you. The more you give, the more children will be helped. 78 | An indication for individuals that use Vim at home: 10 Euro per year. For 79 | professional use: 30 Euro per year per person. 80 | 81 | 82 | How do I become a Vim sponsor or registered Vim user? 83 | 84 | Send money, as explained above |send-money| and include your e-mail address. 85 | When the money has been received you will receive a unique registration key. 86 | This key can be used on the Vim website to get an extra page where you can 87 | choose whether others will be able to see that you donated. There is a link 88 | to this page on your "My Account" page. 89 | 90 | 91 | What is the difference between sponsoring and registering? 92 | 93 | It has a different name. Use the term "registration" if your boss doesn't 94 | like "sponsoring" or "donation". The benefits are the same. 95 | 96 | 97 | How can I send money? 98 | 99 | See |send-money|. Check the web site for the most recent information: 100 | http://www.vim.org/sponsor/ 101 | 102 | 103 | Why don't you use the SourceForge donation system? 104 | 105 | SourceForge takes 5% of the donations for themselves. If you want to support 106 | SourceForge you can send money to them directly. 107 | 108 | 109 | I cannot afford to send money, may I still use Vim? 110 | 111 | Yes. 112 | 113 | 114 | I did not register Vim, can I use all available features? 115 | 116 | Yes. 117 | 118 | 119 | I noticed a bug, do I need to register before I can report it? 120 | 121 | No, suggestions for improving Vim can always be given. For improvements use 122 | the developer |maillist|, for reporting bugs see |bugs|. 123 | 124 | 125 | How about Charityware? 126 | 127 | Currently the Vim donations go to |uganda| anyway. Thus it doesn't matter if 128 | you sponsor Vim or ICCF. 129 | 130 | 131 | I donated $$$, now please add feature XYZ! 132 | 133 | There is no direct relation between your donation and the work developers do. 134 | Otherwise you would be paying for work and we would have to pay tax over the 135 | donation. If you want to hire one of the developers for specific work, 136 | contact them directly, don't use the donation system. 137 | 138 | 139 | Are the donations tax deductible? 140 | 141 | That depends on your country. The donations to help the children in |Uganda| 142 | are tax deductible in Holland, Germany, Canada and in the USA. See the ICCF 143 | website http://iccf-holland.org/donate.html. 144 | 145 | 146 | Can you send me a bill? 147 | 148 | No, because there is no relation between the money you send and the work that 149 | is done. But a receipt is possible. 150 | 151 | 152 | 153 | vim:tw=78:ts=8:noet:ft=help:norl: 154 | -------------------------------------------------------------------------------- /en/usr_50.txt: -------------------------------------------------------------------------------- 1 | *usr_50.txt* For Vim version 9.1. Last change: 2022 Jun 20 2 | 3 | VIM USER MANUAL - by Bram Moolenaar 4 | 5 | Advanced Vim script writing 6 | 7 | 8 | |50.1| Exceptions 9 | |50.2| Function with variable number of arguments 10 | |50.3| Restoring the view 11 | 12 | Next chapter: |usr_51.txt| Create a plugin 13 | Previous chapter: |usr_45.txt| Select your language (local) 14 | Table of contents: |usr_toc.txt| 15 | 16 | ============================================================================== 17 | *50.1* Exceptions 18 | 19 | Let's start with an example: > 20 | 21 | try 22 | read ~/templates/pascal.tmpl 23 | catch /E484:/ 24 | echo "Sorry, the Pascal template file cannot be found." 25 | endtry 26 | 27 | The `read` command will fail if the file does not exist. Instead of 28 | generating an error message, this code catches the error and gives the user a 29 | message with more information. 30 | 31 | For the commands in between `try` and `endtry` errors are turned into 32 | exceptions. An exception is a string. In the case of an error the string 33 | contains the error message. And every error message has a number. In this 34 | case, the error we catch contains "E484:". This number is guaranteed to stay 35 | the same (the text may change, e.g., it may be translated). 36 | 37 | Besides being able to give a nice error message, Vim will also continue 38 | executing commands after the `:endtry`. Otherwise, once an uncaught error is 39 | encountered, execution of the script/function/mapping will be aborted. 40 | 41 | When the `read` command causes another error, the pattern "E484:" will not 42 | match in it. Thus this exception will not be caught and result in the usual 43 | error message and execution is aborted. 44 | 45 | You might be tempted to do this: > 46 | 47 | try 48 | read ~/templates/pascal.tmpl 49 | catch 50 | echo "Sorry, the Pascal template file cannot be found." 51 | endtry 52 | 53 | This means all errors are caught. But then you will not see an error that 54 | would indicate a completely different problem, such as "E21: Cannot make 55 | changes, 'modifiable' is off". Think twice before you catch any error! 56 | 57 | Another useful mechanism is the `finally` command: > 58 | 59 | var tmp = tempname() 60 | try 61 | exe ":.,$write " .. tmp 62 | exe "!filter " .. tmp 63 | :.,$delete 64 | exe ":$read " .. tmp 65 | finally 66 | delete(tmp) 67 | endtry 68 | 69 | This filters the lines from the cursor until the end of the file through the 70 | "filter" command, which takes a file name argument. No matter if the 71 | filtering works, if something goes wrong in between `try` and `finally` or the 72 | user cancels the filtering by pressing CTRL-C, the `delete(tmp)` call is 73 | always executed. This makes sure you don't leave the temporary file behind. 74 | 75 | The `finally` does not catch the exception, the error will still abort 76 | further execution. 77 | 78 | More information about exception handling can be found in the reference 79 | manual: |exception-handling|. 80 | 81 | ============================================================================== 82 | *50.2* Function with variable number of arguments 83 | 84 | Vim enables you to define functions that have a variable number of arguments. 85 | The following command, for instance, defines a function that must have 1 86 | argument (start) and can have up to 20 additional arguments: > 87 | 88 | def Show(start: string, ...items: list) 89 | 90 | The variable "items" will be a list in the function containing the extra 91 | arguments. You can use it like any list, for example: > 92 | 93 | def Show(start: string, ...items: list) 94 | echohl Title 95 | echo "start is " .. start 96 | echohl None 97 | for index in range(len(items)) 98 | echon $" Arg {index} is {items[index]}" 99 | endfor 100 | echo 101 | enddef 102 | 103 | You can call it like this: > 104 | 105 | Show('Title', 'one', 'two', 'three') 106 | < start is Title Arg 0 is one Arg 1 is two Arg 2 is three ~ 107 | 108 | This uses the `echohl` command to specify the highlighting used for the 109 | following `echo` command. `echohl None` stops it again. The `echon` command 110 | works like `echo`, but doesn't output a line break. 111 | 112 | If you call it with one argument the "items" list will be empty. 113 | `range(len(items))` returns a list with the indexes, what `for` loops over, 114 | we'll explain that further down. 115 | 116 | ============================================================================== 117 | *50.3* Restoring the view 118 | 119 | Sometimes you want to jump around, make a change and then go back to the same 120 | position and view. For example to change something in the file header. This 121 | can be done with two functions: > 122 | 123 | var view = winsaveview() 124 | # Move around, make changes 125 | winrestview(view) 126 | 127 | ============================================================================== 128 | 129 | Next chapter: |usr_51.txt| Create a plugin 130 | 131 | Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: 132 | -------------------------------------------------------------------------------- /en/vietnamese.txt: -------------------------------------------------------------------------------- 1 | *vietnamese.txt* For Vim version 9.1. Last change: 2024 Dec 04 2 | 3 | 4 | VIM REFERENCE MANUAL by Phạm Bình An 5 | 6 | 7 | Vietnamese language support in Vim *vietnamese* *Vietnamese* 8 | 9 | 1. Introduction |vietnamese-intro| 10 | 2. Vietnamese keymaps |vietnamese-keymap| 11 | 3. Localization |vietnamese-l10n| 12 | 13 | =============================================================================== 14 | 1. Introduction 15 | *vietnamese-intro* 16 | Vim supports Vietnamese language in the following ways: 17 | 18 | - Built-in |vietnamese-keymap|, which allows you to type Vietnamese characters 19 | in |Insert-mode| and |search-commands| using US keyboard layout. 20 | - Localization in Vietnamese. See |vietnamese-l10n| 21 | 22 | =============================================================================== 23 | 2. Vietnamese keymaps 24 | *vietnamese-keymap* 25 | To switch between languages you can use your system native keyboard switcher, 26 | or use one of the Vietnamese keymaps included in the Vim distribution, like 27 | below > 28 | :set keymap=vietnamese-telex_utf-8 29 | < 30 | See |'keymap'| for more information. 31 | 32 | In the latter case, you can type Vietnamese even if you do not have a 33 | Vietnamese input method engine (IME) or you want Vim to be independent from a 34 | system-wide keyboard settings (when |'imdisable'| is set). You can also |:map| 35 | a key to switch between keyboards. 36 | 37 | Vim comes with the following Vietnamese keymaps: 38 | - *vietnamese-telex_utf-8* Telex input method, |UTF-8| encoding. 39 | - *vietnamese-viqr_utf-8* VIQR input method, |UTF-8| encoding. 40 | - *vietnamese-vni_utf-8* VNI input method, |UTF-8| encoding. 41 | 42 | *vietnamese-ime_diff* 43 | Since these keymaps were designed to be minimalistic, they do not support all 44 | features of the corresponding input methods. The differences are described 45 | below: 46 | 47 | - You can only type each character individually, entering the base letter first 48 | and then the diacritics later. For example, to type the word `nến` using 49 | |vietnamese-vni_utf-8|, you must type `ne61n`, not `nen61` or `ne6n1` 50 | - For characters with more than 1 diacritic, you need to type vowel mark before 51 | tone mark. For example, to type `ồ` using |vietnamese-telex_utf-8|, you need 52 | to type `oof`, not `ofo`. 53 | - With |vietnamese-telex_utf-8|, you need to type all uppercase letters to 54 | produce uppercase characters with diacritics. For example, `Ừ` must be typed 55 | as `UWF`. 56 | - With |vietnamese-telex_utf-8|, the escape character `\` from VNI is added, 57 | hence the confusing `ooo` input to type `oo` is removed, which could lead to 58 | ambiguities. For example, to type the word `Đoòng`, you would type 59 | `DDo\ofng`. 60 | - Simple Telex (both v1 and v2), including the `w[]{}` style, is not 61 | supported. 62 | - Removing diacritics using `z` in Telex or `0` in VNI and VIQR is not supported. 63 | 64 | =============================================================================== 65 | 3. Localization 66 | *vietnamese-l10n* 67 | Vim |messages| are also available in Vietnamese. If you wish to see messages 68 | in Vietnamese, you can run the command |:language| with an argument being the 69 | name of the Vietnamese locale. For example, > 70 | :language vi_VN 71 | < or > 72 | :language vi_VN.utf-8 73 | < 74 | Note that the name of the Vietnamese locale may vary depending on your system. 75 | See |mbyte-first| for details. 76 | 77 | |vimtutor| is also available in Vietnamese. To start Vimtutor in Vietnamese, 78 | run the following command in terminal: > 79 | vimtutor vi 80 | < 81 | =============================================================================== 82 | vim:tw=78:ts=8:noet:ft=help:norl: 83 | -------------------------------------------------------------------------------- /en/workshop.txt: -------------------------------------------------------------------------------- 1 | *workshop.txt* For Vim version 9.1. Last change: 2019 Jan 17 2 | 3 | 4 | VIM REFERENCE MANUAL by Gordon Prieur 5 | 6 | 7 | Sun Visual WorkShop Features *workshop* *workshop-support* 8 | 9 | The support for WorkShop was removed in patch 8.1.0763 in January 2019. 10 | The product has not been available for a long time and has been replaced by 11 | |NetBeans|. 12 | 13 | 14 | vim:tw=78:ts=8:noet:ft=help:norl: 15 | -------------------------------------------------------------------------------- /syntax/help_ja.vim: -------------------------------------------------------------------------------- 1 | scriptencoding utf-8 2 | 3 | syn match helpVim "Vim バージョン [0-9.a-z]\+" 4 | syn match helpVim "VIMリファレンス.*" 5 | syn region helpNotVi start="{Vim" start="{|++\?[A-Za-z0-9_/()]\+|" end="}" contains=helpLeadBlank,helpHyperTextJump 6 | syn match helpWarning "\<警告:" 7 | syn region helpTransNote start="{訳注:" end="}" contains=helpLeadBlank,helpHyperTextJump,helpBracesInTransNote 8 | syn region helpBracesInTransNote start=".{"ms=e end="}."me=s transparent contained contains=helpLeadBlank,helpHyperTextJump,helpBracesInTransNote 9 | syn match helpSpecial "[。、]\zs\[[-a-z^A-Z0-9_]\{2,}]" 10 | hi def link helpTransNote Special 11 | if has("conceal") 12 | syn region helpHeadline matchgroup=helpIgnore start="^☆\(\s\)\@!" end="\ze\(\s\+\*\|$\)" keepend concealends 13 | else 14 | syn region helpHeadline matchgroup=helpIgnore start="^☆\(\s\)\@!" end="\ze\(\s\+\*\|$\)" keepend 15 | endif 16 | -------------------------------------------------------------------------------- /tools/buildhtml.vim: -------------------------------------------------------------------------------- 1 | set nocompatible 2 | set nomore 3 | set encoding=utf-8 4 | set fileencodings=utf-8 5 | syntax on 6 | colorscheme delek 7 | let g:html_no_progress = 1 8 | 9 | enew! 10 | 11 | source :h/tag_aliases.vim 12 | source :h/untranslated.vim 13 | source :h/makehtml.vim 14 | 15 | let s:tools_dir = expand(':p:h') 16 | let s:proj_dir = expand(':p:h:h') 17 | 18 | function! s:main() 19 | " for the lastest help syntax 20 | let &runtimepath = s:tools_dir . ',' . &runtimepath 21 | " for ja custom syntax 22 | let &runtimepath .= ',' . s:proj_dir 23 | call s:BuildHtml() 24 | endfunction 25 | 26 | function! s:BuildHtml() 27 | 28 | " generate tags 29 | try 30 | helptags . 31 | catch 32 | echo v:exception 33 | endtry 34 | 35 | enew 36 | 37 | " 38 | " generate html 39 | " 40 | set foldlevel=1000 41 | call MakeHtmlAll() 42 | " add header and footer 43 | tabnew 44 | " XXX: modeline may cause error. 45 | " 2html.vim escape modeline. But it doesn't escape /^vim:/. 46 | set nomodeline 47 | silent args *.html 48 | silent argdo call s:PostEdit() | update! 49 | endfunction 50 | 51 | function! s:PostEdit() 52 | set fileformat=unix 53 | call s:ToJekyll() 54 | endfunction 55 | 56 | function! s:ToJekyll() 57 | let helpname = expand('%:t:r') 58 | if helpname == 'index' 59 | let helpname = 'help' 60 | endif 61 | " remove header 62 | silent 1,/^
/delete _ 63 | " remove footer 64 | silent /^
/,$delete _ 65 | " escape jekyll tags 66 | silent %s/{\{2,}\|{%/{{ "\0" }}/ge 67 | " YAML front matter 68 | call append(0, [ 69 | \ '---', 70 | \ 'layout: vimdoc', 71 | \ printf("helpname: '%s'", helpname), 72 | \ '---', 73 | \ ]) 74 | endfunction 75 | 76 | call s:main() 77 | -------------------------------------------------------------------------------- /tools/maketags.vim: -------------------------------------------------------------------------------- 1 | helptags doc 2 | qa! 3 | -------------------------------------------------------------------------------- /tools/script/get_doc_info.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | # 3 | # vimdoc-ja-working/en/*.txt(old) と vim/runtime/doc/*.txt(new) を比較して 4 | # 変更行数情報をMarkdownのtable形式でファイルに出力する。 5 | # 6 | # 2018-05-31 h_east : Create initial file. 7 | # 2022-10-02 Tsuyoshi CHO : Update comment and some settings. 8 | 9 | # ローカルに利用する場合は自分の環境にあわせて変更する必要がある 10 | # リポジトリには GitHub workflow で利用する設定で格納する 11 | # GitHub workflow では vim/vim は ${GITHUB_WORKSPACE}/vim へ clone している 12 | new_doc_dir=${GITHUB_WORKSPACE}/vim/runtime/doc 13 | # GitHub workflow では vim-jp/vimdoc-ja-working は ${GITHUB_WORKSPACE}/work へ clone している 14 | old_doc_dir=${GITHUB_WORKSPACE}/work/en 15 | 16 | # 出力ファイル名 17 | outf=doc_info.md 18 | rm -f ${outf} 19 | rm -f ${outf}.presort 20 | 21 | # 除外ファイル 22 | exclude_files_str=' 23 | hebrew.txt 24 | todo.txt 25 | version5.txt 26 | version6.txt 27 | version7.txt 28 | ' 29 | exclude_files=(`echo $exclude_files_str`) 30 | unchanged_file_count=0 31 | 32 | for sfp in `ls -1 ${new_doc_dir}/*.txt`; do 33 | fname=`basename ${sfp}` 34 | fp=`readlink -f ${sfp}` 35 | old_fp=${old_doc_dir}/${fname} 36 | for (( i = 0; i < ${#exclude_files[@]}; ++i )); do 37 | if [ ${fname} == ${exclude_files[$i]} ]; then 38 | continue 2 39 | fi 40 | done 41 | 42 | lines=() 43 | is_output=true 44 | 45 | #echo "new fpath: ${fp}" 46 | #echo "base fname: ${fname}" 47 | #echo "old fpath: ${old_fp}" 48 | lines+=("|${fname}") 49 | set `wc -l ${fp}` 50 | lines+=("|${1}") 51 | if [ -e ${old_fp} ]; then 52 | add_lines=0 53 | del_lines=0 54 | 55 | cmd=`git diff --numstat ${old_fp} ${fp}` 56 | if [ $? -ne 0 ]; then 57 | set ${cmd} 58 | if [ ${1} != "" ]; then 59 | add_lines=${1} 60 | del_lines=${2} 61 | fi 62 | fi 63 | lines+=("|${add_lines}(+)") 64 | lines+=("|${del_lines}(-)") 65 | if [ ${add_lines} -eq 0 -a ${del_lines} -eq 0 ]; then 66 | is_output=false 67 | ((++unchanged_file_count)) 68 | fi 69 | else 70 | lines+=("|New") 71 | lines+=("|") 72 | fi 73 | lines+=("|") 74 | lines+=("|") 75 | lines+=("|") 76 | if ${is_output}; then 77 | line="$(IFS=; echo "${lines[*]}")" 78 | echo ${line[@]} >> ${outf}.presort 79 | fi 80 | done 81 | 82 | # Detect deleted files. 83 | for fp in `ls -1 ${old_doc_dir}/*.txt`; do 84 | fname=`basename ${fp}` 85 | new_fp=${new_doc_dir}/${fname} 86 | 87 | lines=() 88 | if [ ! -e ${new_fp} ]; then 89 | lines+=("|${fname}") 90 | set `wc -l ${fp}` 91 | lines+=("|${1}") 92 | lines+=("|Deleted||||") 93 | line="$(IFS=; echo "${lines[*]}")" 94 | echo ${line[@]} >> ${outf}.presort 95 | fi 96 | done 97 | 98 | if [ -e ${outf}.presort ]; then 99 | echo -n "|ファイル名" >> ${outf} 100 | echo -n "|総行数" >> ${outf} 101 | echo -n "|変更行数" >> ${outf} 102 | echo -n "|削除行数" >> ${outf} 103 | echo -n "|作業者" >> ${outf} 104 | echo -n "|メモ" >> ${outf} 105 | echo "|" >> ${outf} 106 | 107 | echo -n "|:--------" >> ${outf} 108 | echo -n "|---:" >> ${outf} 109 | echo -n "|---:" >> ${outf} 110 | echo -n "|---:" >> ${outf} 111 | echo -n "|:---" >> ${outf} 112 | echo -n "|:---" >> ${outf} 113 | echo "|" >> ${outf} 114 | 115 | sort ${outf}.presort >> ${outf} 116 | rm -f ${outf}.presort 117 | 118 | echo "" >> ${outf} 119 | echo "更新不要の ${unchanged_file_count} ファイルの表示は省略しています。" >> ${outf} 120 | else 121 | echo ":ok_man: 未翻訳のファイルはありません。" >> ${outf} 122 | fi 123 | 124 | # Listing excluded files 125 | echo "" >> ${outf} 126 | echo -n "※" >> ${outf} 127 | for (( i = 0; i < ${#exclude_files[@]}; ++i )); do 128 | if [ ${i} -ne 0 ]; then 129 | echo -n "," >> ${outf} 130 | fi 131 | echo -n " ${exclude_files[$i]}" >> ${outf} 132 | done 133 | echo " は翻訳対象外です。" >> ${outf} 134 | 135 | # vim:ts=4 sw=0: 136 | -------------------------------------------------------------------------------- /tools/tag_aliases.vim: -------------------------------------------------------------------------------- 1 | let g:makehtml_tag_aliases = { 2 | \ '=~': 'expr-=~', 3 | \ } 4 | -------------------------------------------------------------------------------- /tools/untranslated.vim: -------------------------------------------------------------------------------- 1 | let g:makehtml_external_taglinks = { 2 | \ 'hebrew.txt': 'https://vim-jp.org/vimdoc-ja/hebrew.html', 3 | \ 'todo.txt': 'https://vim-jp.org/vimdoc-ja/todo.html', 4 | \ 'version5.txt': 'https://vim-jp.org/vimdoc-ja/version5.html', 5 | \ 'version6.txt': 'https://vim-jp.org/vimdoc-ja/version6.html', 6 | \ 'version7.txt': 'https://vim-jp.org/vimdoc-ja/version7.html', 7 | \ 'i_CTRL-B-gone': 'https://vim-jp.org/vimdoc-en/version5.html#i_CTRL-B-gone', 8 | \ 'new-diff-mode': 'https://vim-jp.org/vimdoc-en/version6.html#new-diff-mode', 9 | \ 'vim-7.4': 'https://vim-jp.org/vimdoc-en/version7.html#vim-7.4', 10 | \ 'todo': 'https://vim-jp.org/vimdoc-en/todo.html#todo', 11 | \ } 12 | -------------------------------------------------------------------------------- /vim_faq/README: -------------------------------------------------------------------------------- 1 | [vim_faq : The Vim-FAQ from vimdoc.sourceforge.net] 2 | http://www.vim.org/scripts/script.php?script_id=3298 3 | 4 | [chrisbra/vim_faq - GitHub] 5 | https://github.com/chrisbra/vim_faq 6 | --------------------------------------------------------------------------------