├── .gitignore ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md ├── pages ├── home │ ├── __init__.py │ ├── admin.py │ ├── apps.py │ ├── data │ │ └── load_data.py │ ├── migrations │ │ ├── 0001_initial.py │ │ └── __init__.py │ ├── models.py │ ├── templates │ │ └── home │ │ │ └── index.html │ ├── tests.py │ ├── urls.py │ └── views.py ├── manage.py └── pages │ ├── __init__.py │ ├── asgi.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py ├── requirements.txt └── word_phrases_list.csv /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | # C extensions 7 | *.so 8 | 9 | # Distribution / packaging 10 | .Python 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | pyvenv.cfg 18 | lib/ 19 | lib64/ 20 | parts/ 21 | sdist/ 22 | var/ 23 | wheels/ 24 | pip-wheel-metadata/ 25 | share/python-wheels/ 26 | *.egg-info/ 27 | .installed.cfg 28 | *.egg 29 | MANIFEST 30 | bin/* 31 | 32 | # PyInstaller 33 | # Usually these files are written by a python script from a template 34 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 35 | *.manifest 36 | *.spec 37 | 38 | # Installer logs 39 | pip-log.txt 40 | pip-delete-this-directory.txt 41 | 42 | # Unit test / coverage reports 43 | htmlcov/ 44 | .tox/ 45 | .nox/ 46 | .coverage 47 | .coverage.* 48 | .cache 49 | nosetests.xml 50 | coverage.xml 51 | *.cover 52 | *.py,cover 53 | .hypothesis/ 54 | .pytest_cache/ 55 | 56 | # Translations 57 | *.mo 58 | *.pot 59 | 60 | # Django stuff: 61 | *.log 62 | local_settings.py 63 | db.sqlite3 64 | db.sqlite3-journal 65 | 66 | # Flask stuff: 67 | instance/ 68 | .webassets-cache 69 | 70 | # Scrapy stuff: 71 | .scrapy 72 | 73 | # Sphinx documentation 74 | docs/_build/ 75 | 76 | # PyBuilder 77 | target/ 78 | 79 | # Jupyter Notebook 80 | .ipynb_checkpoints 81 | 82 | # IPython 83 | profile_default/ 84 | ipython_config.py 85 | 86 | # pyenv 87 | .python-version 88 | 89 | # pipenv 90 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 91 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 92 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 93 | # install all needed dependencies. 94 | #Pipfile.lock 95 | 96 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow 97 | __pypackages__/ 98 | 99 | # Celery stuff 100 | celerybeat-schedule 101 | celerybeat.pid 102 | 103 | # SageMath parsed files 104 | *.sage.py 105 | 106 | # Environments 107 | .env 108 | .venv 109 | env/ 110 | venv/ 111 | ENV/ 112 | env.bak/ 113 | venv.bak/ 114 | 115 | # Spyder project settings 116 | .spyderproject 117 | .spyproject 118 | 119 | # Rope project settings 120 | .ropeproject 121 | 122 | # mkdocs documentation 123 | /site 124 | 125 | # mypy 126 | .mypy_cache/ 127 | .dmypy.json 128 | dmypy.json 129 | 130 | # Pyre type checker 131 | .pyre/ 132 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | 2 | # Contributor Covenant Code of Conduct 3 | 4 | ## Our Pledge 5 | 6 | We as members, contributors, and leaders pledge to make participation in our 7 | community a harassment-free experience for everyone, regardless of age, body 8 | size, visible or invisible disability, ethnicity, sex characteristics, gender 9 | identity and expression, level of experience, education, socio-economic status, 10 | nationality, personal appearance, race, religion, or sexual identity 11 | and orientation. 12 | 13 | We pledge to act and interact in ways that contribute to an open, welcoming, 14 | diverse, inclusive, and healthy community. 15 | 16 | ## Our Standards 17 | 18 | Examples of behavior that contributes to a positive environment for our 19 | community include: 20 | 21 | * Demonstrating empathy and kindness toward other people 22 | * Being respectful of differing opinions, viewpoints, and experiences 23 | * Giving and gracefully accepting constructive feedback 24 | * Accepting responsibility and apologizing to those affected by our mistakes, 25 | and learning from the experience 26 | * Focusing on what is best not just for us as individuals, but for the 27 | overall community 28 | 29 | Examples of unacceptable behavior include: 30 | 31 | * The use of sexualized language or imagery, and sexual attention or 32 | advances of any kind 33 | * Trolling, insulting or derogatory comments, and personal or political attacks 34 | * Public or private harassment 35 | * Publishing others' private information, such as a physical or email 36 | address, without their explicit permission 37 | * Other conduct which could reasonably be considered inappropriate in a 38 | professional setting 39 | 40 | ## Enforcement Responsibilities 41 | 42 | Community leaders are responsible for clarifying and enforcing our standards of 43 | acceptable behavior and will take appropriate and fair corrective action in 44 | response to any behavior that they deem inappropriate, threatening, offensive, 45 | or harmful. 46 | 47 | Community leaders have the right and responsibility to remove, edit, or reject 48 | comments, commits, code, wiki edits, issues, and other contributions that are 49 | not aligned to this Code of Conduct, and will communicate reasons for moderation 50 | decisions when appropriate. 51 | 52 | ## Scope 53 | 54 | This Code of Conduct applies within all community spaces, and also applies when 55 | an individual is officially representing the community in public spaces. 56 | Examples of representing our community include using an official e-mail address, 57 | posting via an official social media account, or acting as an appointed 58 | representative at an online or offline event. 59 | 60 | ## Enforcement 61 | 62 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 63 | reported to the community leaders responsible for enforcement at 64 | [INSERT CONTACT METHOD]. 65 | All complaints will be reviewed and investigated promptly and fairly. 66 | 67 | All community leaders are obligated to respect the privacy and security of the 68 | reporter of any incident. 69 | 70 | ## Enforcement Guidelines 71 | 72 | Community leaders will follow these Community Impact Guidelines in determining 73 | the consequences for any action they deem in violation of this Code of Conduct: 74 | 75 | ### 1. Correction 76 | 77 | **Community Impact**: Use of inappropriate language or other behavior deemed 78 | unprofessional or unwelcome in the community. 79 | 80 | **Consequence**: A private, written warning from community leaders, providing 81 | clarity around the nature of the violation and an explanation of why the 82 | behavior was inappropriate. A public apology may be requested. 83 | 84 | ### 2. Warning 85 | 86 | **Community Impact**: A violation through a single incident or series 87 | of actions. 88 | 89 | **Consequence**: A warning with consequences for continued behavior. No 90 | interaction with the people involved, including unsolicited interaction with 91 | those enforcing the Code of Conduct, for a specified period of time. This 92 | includes avoiding interactions in community spaces as well as external channels 93 | like social media. Violating these terms may lead to a temporary or 94 | permanent ban. 95 | 96 | ### 3. Temporary Ban 97 | 98 | **Community Impact**: A serious violation of community standards, including 99 | sustained inappropriate behavior. 100 | 101 | **Consequence**: A temporary ban from any sort of interaction or public 102 | communication with the community for a specified period of time. No public or 103 | private interaction with the people involved, including unsolicited interaction 104 | with those enforcing the Code of Conduct, is allowed during this period. 105 | Violating these terms may lead to a permanent ban. 106 | 107 | ### 4. Permanent Ban 108 | 109 | **Community Impact**: Demonstrating a pattern of violation of community 110 | standards, including sustained inappropriate behavior, harassment of an 111 | individual, or aggression toward or disparagement of classes of individuals. 112 | 113 | **Consequence**: A permanent ban from any sort of public interaction within 114 | the community. 115 | 116 | ## Attribution 117 | 118 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], 119 | version 2.0, available at 120 | [https://www.contributor-covenant.org/version/2/0/code_of_conduct.html][v2.0]. 121 | 122 | Community Impact Guidelines were inspired by 123 | [Mozilla's code of conduct enforcement ladder][Mozilla CoC]. 124 | 125 | For answers to common questions about this code of conduct, see the FAQ at 126 | [https://www.contributor-covenant.org/faq][FAQ]. Translations are available 127 | at [https://www.contributor-covenant.org/translations][translations]. 128 | 129 | [homepage]: https://www.contributor-covenant.org 130 | [v2.0]: https://www.contributor-covenant.org/version/2/0/code_of_conduct.html 131 | [Mozilla CoC]: https://github.com/mozilla/diversity 132 | [FAQ]: https://www.contributor-covenant.org/faq 133 | [translations]: https://www.contributor-covenant.org/translations 134 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 JapanTechAndLanguage 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # jap-english-tech-worddeck 2 | 3 | ### A Japanese-English word deck for developers/engineers. 4 | 5 | ### Contribution 6 | There are two main ways to contribute. 7 | 1. Add or check the vocabulary list. 8 | - You will need knowledge with Japanese and English tech/dev words or phrases 9 | 10 | 2. WebViewer Development 11 | - Uses python, django and web development 12 | 13 | #### How to contribute? 14 | 15 | 1. [Fork](https://github.com/JapanTechAndLanguage/jap-english-tech-worddeck/fork) this repository. 16 | 2. Create a new branch from `main` branch 17 | 3. Add lines to word_phrases_list.csv 18 | 4. Commit the changes and create a PR 19 | 20 | 21 |
22 | 23 | For questions/suggestions, create an issue or contact 24 | [avie-dev](https://github.com/avie-dev) 25 | 26 | -------------------------------------------------------------------------------- /pages/home/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JapanTechAndLanguage/jap-english-tech-worddeck/7fcce6b738350f625887729012fb1943a1ed7989/pages/home/__init__.py -------------------------------------------------------------------------------- /pages/home/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | from .models import Term 4 | # Register your models here. 5 | admin.site.register(Term) 6 | -------------------------------------------------------------------------------- /pages/home/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class HomeConfig(AppConfig): 5 | default_auto_field = 'django.db.models.BigAutoField' 6 | name = 'home' 7 | -------------------------------------------------------------------------------- /pages/home/data/load_data.py: -------------------------------------------------------------------------------- 1 | import csv 2 | 3 | from home.models import Term 4 | 5 | with open('../word_phrases_list.csv') as csvfile: 6 | reader = csv.DictReader(csvfile) 7 | for row in reader: 8 | term = Term(kanji=row['Japanese(Kanji)'], kana=row['Japanese(kana)'], roomaji=row['Roomaji'], english_text=row['English']) 9 | term.save() 10 | -------------------------------------------------------------------------------- /pages/home/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 4.1 on 2022-08-06 08:09 2 | 3 | from django.db import migrations, models 4 | 5 | 6 | class Migration(migrations.Migration): 7 | 8 | initial = True 9 | 10 | dependencies = [ 11 | ] 12 | 13 | operations = [ 14 | migrations.CreateModel( 15 | name='Term', 16 | fields=[ 17 | ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 18 | ('kanji', models.CharField(max_length=150)), 19 | ('kana', models.CharField(max_length=150)), 20 | ('roomaji', models.CharField(max_length=150)), 21 | ('english_text', models.CharField(max_length=150)), 22 | ('japanese_audio_path', models.FileField(upload_to='')), 23 | ('english_audio_path', models.FileField(upload_to='')), 24 | ], 25 | ), 26 | ] 27 | -------------------------------------------------------------------------------- /pages/home/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JapanTechAndLanguage/jap-english-tech-worddeck/7fcce6b738350f625887729012fb1943a1ed7989/pages/home/migrations/__init__.py -------------------------------------------------------------------------------- /pages/home/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | # Create your models here. 4 | class Term(models.Model): 5 | kanji = models.CharField(max_length=150) 6 | kana = models.CharField(max_length=150) 7 | roomaji = models.CharField(max_length=150) 8 | english_text = models.CharField(max_length=150) 9 | japanese_audio_path = models.FileField() 10 | english_audio_path = models.FileField() 11 | 12 | 13 | -------------------------------------------------------------------------------- /pages/home/templates/home/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Japanese English Word Deck 5 | 6 | 7 | 8 | 9 | 10 |
11 |

Japanese English Word Deck

12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | {% for term in terms %} 24 | 25 | 26 | 27 | 28 | 31 | 34 | {% endfor %} 35 | 36 | 37 |
KanjiKanaRoomajiEnglishJP_AudioEN_Audio
{{ term.kanji }}{{ term.kana }}{{ term.roomaji }}{{ term.english_text }} 29 | 30 | 32 | 33 |
38 |
39 | 40 | 41 | -------------------------------------------------------------------------------- /pages/home/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /pages/home/urls.py: -------------------------------------------------------------------------------- 1 | from django.urls import path 2 | 3 | from . import views 4 | 5 | urlpatterns = [ 6 | path('', views.index, name='index'), 7 | ] 8 | -------------------------------------------------------------------------------- /pages/home/views.py: -------------------------------------------------------------------------------- 1 | from django.shortcuts import render 2 | 3 | from home.models import Term 4 | # Create your views here. 5 | def index(request): 6 | return render(request, 'home/index.html', {'terms': Term.objects.all()}) 7 | -------------------------------------------------------------------------------- /pages/manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | """Django's command-line utility for administrative tasks.""" 3 | import os 4 | import sys 5 | import csv 6 | 7 | from home.models import Term 8 | 9 | 10 | def main(): 11 | """Run administrative tasks.""" 12 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'pages.settings') 13 | try: 14 | from django.core.management import execute_from_command_line 15 | # with open('../word_phrases_list.csv') as csvfile: 16 | # reader = csv.DictReader(csvfile) 17 | # for row in reader: 18 | # term = Term(kanji=row['Japanese(Kanji)'], kana=row['Japanese(kana)'], roomaji=row['Roomaji'], english_text=row['English']) 19 | # term.save() 20 | except ImportError as exc: 21 | raise ImportError( 22 | "Couldn't import Django. Are you sure it's installed and " 23 | "available on your PYTHONPATH environment variable? Did you " 24 | "forget to activate a virtual environment?" 25 | ) from exc 26 | execute_from_command_line(sys.argv) 27 | 28 | 29 | if __name__ == '__main__': 30 | main() 31 | -------------------------------------------------------------------------------- /pages/pages/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JapanTechAndLanguage/jap-english-tech-worddeck/7fcce6b738350f625887729012fb1943a1ed7989/pages/pages/__init__.py -------------------------------------------------------------------------------- /pages/pages/asgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | ASGI config for pages project. 3 | 4 | It exposes the ASGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/4.1/howto/deployment/asgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.asgi import get_asgi_application 13 | 14 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'pages.settings') 15 | 16 | application = get_asgi_application() 17 | -------------------------------------------------------------------------------- /pages/pages/settings.py: -------------------------------------------------------------------------------- 1 | """ 2 | Django settings for pages project. 3 | 4 | Generated by 'django-admin startproject' using Django 4.1. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/4.1/topics/settings/ 8 | 9 | For the full list of settings and their values, see 10 | https://docs.djangoproject.com/en/4.1/ref/settings/ 11 | """ 12 | 13 | import os 14 | from pathlib import Path 15 | 16 | from dotenv import load_dotenv 17 | 18 | # Build paths inside the project like this: BASE_DIR / 'subdir'. 19 | BASE_DIR = Path(__file__).resolve().parent.parent 20 | 21 | load_dotenv() 22 | 23 | # Quick-start development settings - unsuitable for production 24 | # See https://docs.djangoproject.com/en/4.1/howto/deployment/checklist/ 25 | 26 | # SECURITY WARNING: keep the secret key used in production secret! 27 | SECRET_KEY = os.getenv('SECRET_KEY') 28 | 29 | # SECURITY WARNING: don't run with debug turned on in production! 30 | DEBUG = True 31 | 32 | ALLOWED_HOSTS = [] 33 | 34 | 35 | # Application definition 36 | 37 | INSTALLED_APPS = [ 38 | 'home.apps.HomeConfig', 39 | 'django.contrib.admin', 40 | 'django.contrib.auth', 41 | 'django.contrib.contenttypes', 42 | 'django.contrib.sessions', 43 | 'django.contrib.messages', 44 | 'django.contrib.staticfiles', 45 | ] 46 | 47 | MIDDLEWARE = [ 48 | 'django.middleware.security.SecurityMiddleware', 49 | 'django.contrib.sessions.middleware.SessionMiddleware', 50 | 'django.middleware.common.CommonMiddleware', 51 | 'django.middleware.csrf.CsrfViewMiddleware', 52 | 'django.contrib.auth.middleware.AuthenticationMiddleware', 53 | 'django.contrib.messages.middleware.MessageMiddleware', 54 | 'django.middleware.clickjacking.XFrameOptionsMiddleware', 55 | ] 56 | 57 | ROOT_URLCONF = 'pages.urls' 58 | 59 | TEMPLATES = [ 60 | { 61 | 'BACKEND': 'django.template.backends.django.DjangoTemplates', 62 | 'DIRS': [], 63 | 'APP_DIRS': True, 64 | 'OPTIONS': { 65 | 'context_processors': [ 66 | 'django.template.context_processors.debug', 67 | 'django.template.context_processors.request', 68 | 'django.contrib.auth.context_processors.auth', 69 | 'django.contrib.messages.context_processors.messages', 70 | ], 71 | }, 72 | }, 73 | ] 74 | 75 | WSGI_APPLICATION = 'pages.wsgi.application' 76 | 77 | 78 | # Database 79 | # https://docs.djangoproject.com/en/4.1/ref/settings/#databases 80 | 81 | DATABASES = { 82 | 'default': { 83 | 'ENGINE': 'django.db.backends.sqlite3', 84 | 'NAME': BASE_DIR / 'db.sqlite3', 85 | } 86 | } 87 | 88 | 89 | # Password validation 90 | # https://docs.djangoproject.com/en/4.1/ref/settings/#auth-password-validators 91 | 92 | AUTH_PASSWORD_VALIDATORS = [ 93 | { 94 | 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 95 | }, 96 | { 97 | 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', 98 | }, 99 | { 100 | 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', 101 | }, 102 | { 103 | 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', 104 | }, 105 | ] 106 | 107 | 108 | # Internationalization 109 | # https://docs.djangoproject.com/en/4.1/topics/i18n/ 110 | 111 | LANGUAGE_CODE = 'en-us' 112 | 113 | TIME_ZONE = 'UTC' 114 | 115 | USE_I18N = True 116 | 117 | USE_TZ = True 118 | 119 | 120 | # Static files (CSS, JavaScript, Images) 121 | # https://docs.djangoproject.com/en/4.1/howto/static-files/ 122 | 123 | STATIC_URL = 'static/' 124 | 125 | # Default primary key field type 126 | # https://docs.djangoproject.com/en/4.1/ref/settings/#default-auto-field 127 | 128 | DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' 129 | -------------------------------------------------------------------------------- /pages/pages/urls.py: -------------------------------------------------------------------------------- 1 | """pages URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/4.1/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: path('', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.urls import include, path 14 | 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) 15 | """ 16 | from django.contrib import admin 17 | from django.urls import include, path 18 | 19 | urlpatterns = [ 20 | path('home/', include('home.urls')), 21 | path('admin/', admin.site.urls), 22 | ] 23 | -------------------------------------------------------------------------------- /pages/pages/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for pages project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/4.1/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'pages.settings') 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | asgiref==3.5.2; python_version >= "3.8" \ 2 | --hash=sha256:1d2880b792ae8757289136f1db2b7b99100ce959b2aa57fd69dab783d05afac4 \ 3 | --hash=sha256:4a29362a6acebe09bf1d6640db38c1dc3d9217c68e6f9f6204d72667fc19a424 4 | django==4.1; python_version >= "3.8" \ 5 | --hash=sha256:031ccb717782f6af83a0063a1957686e87cb4581ea61b47b3e9addf60687989a \ 6 | --hash=sha256:032f8a6fc7cf05ccd1214e4a2e21dfcd6a23b9d575c6573cacc8c67828dbe642 7 | python-dotenv==0.20.0; python_version >= "3.5" \ 8 | --hash=sha256:b7e3b04a59693c42c36f9ab1cc2acc46fa5df8c78e178fc33a8d4cd05c8d498f \ 9 | --hash=sha256:d92a187be61fe482e4fd675b6d52200e7be63a12b724abbf931a40ce4fa92938 10 | sqlparse==0.4.2; python_version >= "3.8" \ 11 | --hash=sha256:48719e356bb8b42991bdbb1e8b83223757b93789c00910a616a071910ca4a64d \ 12 | --hash=sha256:0c00730c74263a94e5a9919ade150dfc3b19c574389985446148402998287dae 13 | tzdata==2022.1; sys_platform == "win32" and python_version >= "3.8" \ 14 | --hash=sha256:238e70234214138ed7b4e8a0fab0e5e13872edab3be586ab8198c407620e2ab9 \ 15 | --hash=sha256:8b536a8ec63dc0751342b3984193a3118f8fca2afe25752bb9b7fffd398552d3 16 | -------------------------------------------------------------------------------- /word_phrases_list.csv: -------------------------------------------------------------------------------- 1 | Japanese(Kanji),Japanese(kana),Roomaji,English,Notes 2 | 押す,おす,osu,"press, push", 3 | 長押し,ながおし,nagaoshi,hold, 4 | クリックする,クリックする,kurikku suru,click, 5 | 左クリックする,ひだりクリックする,hidari kurikku suru,left-click, 6 | 右クリックする,みぎクリックする,migi kurikku suru,right-click, 7 | ダブルクリックする,ダブルクリックする,daburu kurikku suru,double-click, 8 | ドラッグする,ドラッグする,doraggu suru,drag, 9 | ポイントする、指す,ポイントする、さす,sasu,point, 10 | ポインタを置く,ポインタをおく,pointa wo oku,"hover ~over, rest ~on, move~over", 11 | タッチする,タッチする,tacchi suru,touch, 12 | タップする,タップする,tappu suru,tap, 13 | ダブルタップする,ダブルタップする,daburu tappu suru,double-tap, 14 | ピンチする,,,pinch, 15 | ピンチインする,,,pinch in, 16 | ピンチアウトする,,,pinch out, 17 | スプレッドする,,,spread, 18 | フリックする,,,flick, 19 | スワイプする,,,swipe, 20 | コピーする,,,copy, 21 | 切り取る、カットする,,,cut, 22 | 貼付ける、ペーストする,,,paste, 23 | スクロールする,,,scroll, 24 | 描く,,,draw, 25 | シェイクする、振る,,,shake, 26 | 実行する,,,"execute, perform, run, go", 27 | 処理する,,,"process, handle", 28 | 試行する,,,try, 29 | 再試行する,,,retry, 30 | 使用する,,,use, 31 | 適用する,,,apply, 32 | 続行する,,,continue, 33 | 計算する,,,calculate, 34 | 強制する,,,force, 35 | 表示する,,,"show, display", 36 | 見る,,,view, 37 | プレビューする,,,preview, 38 | 一覧表示する,,,list, 39 | 隠す、非表示する,,,"hide, unshow", 40 | 参照する,,,"refer, see", 41 | 確認する、チェックする,,,"check, confirm, review", 42 | 検証する,,,"verify, validate", 43 | 識別する,,,identify, 44 | 検索する,,,"find, search, locate", 45 | 置換する,,,replace, 46 | 検索する,,,explore, 47 | フィルターをかける、振り分ける,,,filter, 48 | 選択する,,,"select, choose, pick", 49 | 複数選択,,,multiselect, 50 | 選択削除する,,,"deselect, unselect", 51 | 割り当てる,,,"allocate, assign", 52 | 指定する,,,specify, 53 | スケジュールする,,,schedule, 54 | 従う,,,follow, 55 | 移動する,,,move, 56 | スキップする,,,skip, 57 | 次へ,,,(go to) next, 58 | 前へ,,,(go back to) previous, 59 | 進む,,,(go) forward, 60 | 戻る,,,"(go) back, return", 61 | 訪問する,,,visit, 62 | アクセスする,,,access, 63 | 回転する,,,rotate, 64 | 自動回転する,,,autorotate, 65 | 同意する,,,"agree, accept", 66 | 許可する,,,"allow, accept", 67 | 受け入れる,,,accept, 68 | 拒否する,,,"decline, deny, reject", 69 | 同意しない,,,disagree, 70 | 無視する,,,ignore, 71 | ブロックする,,,block, 72 | 何もしない,,,do nothing, 73 | 応答する,,,"answer, respond", 74 | 依頼する,,,"ask, request", 75 | 必要とする,,,require, 76 | 推薦する,,,recommend, 77 | 送信する,,,"send, submit", 78 | メールを送る,,,email, 79 | 転送する,,,forward, 80 | 返信する,,,reply, 81 | 発言する,,,call, 82 | ダイアルする,,,dial, 83 | 提供する,,,provide, 84 | 共有する,,,share, 85 | 公開する,,,publish, 86 | 投稿する,,,post, 87 | 報告する、レポートする,,,report, 88 | 通知する,,,notify, 89 | 招待する、招く,,,invite, 90 | 参加する,,,join, 91 | チャットする,,,chat, 92 | 読み上げる、話す,,,speak, 93 | 開始する,,,start, 94 | 起動する,,,"launch, boot, startup", 95 | 電源を入れる,,,power on, 96 | オンにする,,,on, 97 | 再生する,,,play, 98 | 確立する,,,establish, 99 | 終了する,,,"exit, quit, finish, end, terminate, shut down", 100 | 取り消す、キャンセルする,,,cancel, 101 | 完了する,,,complete, 102 | オフにする,,,turn off, 103 | 電源を切る,,,power off, 104 | 停止する,,,stop, 105 | 一時停止する,,,pause, 106 | 中止する,,,abort, 107 | 中断する,,,"interrupt, suspend", 108 | 再起動する,,,"restart, reboot", 109 | 繰り返す,,,repeat, 110 | 再開する,,,resume, 111 | 開く,,,open, 112 | 閉じる,,,close, 113 | 接続する,,,connect, 114 | 再接続する,,,reconnect, 115 | 接続解除する、切断する,,,disconnect, 116 | 有効にする,,,"enable, activate", 117 | 無効にする,,,disable, 118 | 失敗する,,,fail, 119 | 期限が切れる,,,expire, 120 | 離れる,,,leave, 121 | 変更する,,,"change, modify", 122 | 変換する,,,convert, 123 | セットアップする,,,setup, 124 | 管理する,,,manage, 125 | 制御する,,,control, 126 | 整理する,,,organize, 127 | 並び換える、ソートする,,,sort, 128 | 編集する,,,edit, 129 | リセットする,,,reset, 130 | 修正する,,,"correct, modify", 131 | 復元する,,,restore, 132 | 修復する,,,"fix, repair, recover", 133 | 調整する,,,"adjust, tune", 134 | 解決する,,,resolve, 135 | 元に戻す,,,"undo, revert", 136 | やり直す,,,"redo, startover", 137 | 同期する,,,"synchronize, sync", 138 | 一致する,,,match, 139 | 合わせる、収める,,,fit, 140 | 最適化する,,,optimize, 141 | 初期化する,,,initialize, 142 | 準備する,,,prepare, 143 | グールプ化する,,,group, 144 | グループ化解除する,,,ungroup, 145 | 作成する,,,"create, make, compose", 146 | 新規作成する,,,new, 147 | 生成する,,,generate, 148 | 追加する,,,"add, append", 149 | 挿入する,,,insert, 150 | 含める,,,include, 151 | 添付する,,,attach, 152 | 結合する,,,"merge, combine", 153 | 統合する,,,"combine, join", 154 | 登録する,,,"register, sign up", 155 | 削除する,,,"delete, remove", 156 | 削去する,,,"clear, erase", 157 | 破棄する,,,discard, 158 | 空にする,,,empty, 159 | 除外する,,,exclude, 160 | 購読する,,,subscribe, 161 | 購読解除,,,unsubscribe, 162 | マウントする,,,mount, 163 | マウント解除する,,,unmount, 164 | 保存する,,,save, 165 | 名前を付けて保存する、別名で保存する,,,save as, 166 | 自動保存する,,,autosave, 167 | 記憶する,,,remember, 168 | 録音する、記憶する,,,record, 169 | 残す,,,"keep, leave", 170 | 待機する,,,wait, 171 | 制限する,,,"limit, restrict", 172 | 保護する,,,protect, 173 | 暗号化する,,,encrypt, 174 | ロックする,,,lock, 175 | ロックを解除する,,,unlock, 176 | バックアップする,,,back up, 177 | 増やす,,,increase, 178 | 拡大する,,,"stretch, larger", 179 | 縮小する,,,"reduce, smaller", 180 | 上げる,,,raise, 181 | 下げる,,,lower, 182 | 最大化する,,,maximize, 183 | 最小化する,,,minimize, 184 | サイズを変更する,,,resize, 185 | サイズを調整する,,,rescale, 186 | ズームする、拡大縮小する,,,zoom, 187 | ズームインする、拡大する,,,zoom in, 188 | ズームアウト、縮小する,,,zoom out, 189 | 解凍する、展開する,,,"extract, decompress, unarchive", 190 | 圧縮する,,,"compress, compact", 191 | アーカイブする,,,archive, 192 | 展開する,,,expand, 193 | 折り畳む、閉じる,,,collapse, 194 | 詳細表示する,,,show more, 195 | 簡易表示する,,,show less, 196 | 消音する、ミュートする,,,mute, 197 | 消音削除する、ミュートを削除する,,,unmute, 198 | 複製する,,,duplicate, 199 | 分割する,,,split, 200 | 入力する,,,"type, enter(text), fill, input", 201 | 自動入力する,,,autofill, 202 | 撮影する,,,"capture, take(picture, photo)", 203 | キャプチャーする、取り込む,,,capture, 204 | スキャンする,,,scan, 205 | 出力する,,,output, 206 | 印刷する,,,print, 207 | 読み取る、読む,,,read, 208 | 読み込む,,,"load, import", 209 | 再読み込みする,,,reload, 210 | 取得する,,,"get, retrieve, fetch", 211 | 抽出する,,,extract, 212 | 書き込む,,,write, 213 | 書き出す,,,export, 214 | 上書きする,,,"overwrite, override", 215 | ログインする,,,log in, 216 | ログアウトする,,,log out, 217 | ログオフする,,,log off, 218 | サインインする,,,sign in, 219 | サインアウトする,,,sign out, 220 | アップロードする,,,upload, 221 | ダウンロードする,,,download, 222 | インストールする,,,install, 223 | アンインストールする,,,uninstall, 224 | インポートする,,,import, 225 | エクスポートする,,,export, 226 | --------------------------------------------------------------------------------