From 74c63db65f5d56c8a70acc3a2009c100053d61cb Mon Sep 17 00:00:00 2001 From: Karthik Srinivasan Date: Tue, 28 Apr 2026 23:03:17 -0400 Subject: [PATCH] 2026-teamH-wiki-entry CAD to URDF --- .../workflows/jekyll-github-pages-deploy.yml | 124 +- .gitignore | 24 +- .ruby-version | 2 +- 404.html | 48 +- Gemfile | 38 +- Gemfile.lock | 604 +- LICENSE.txt | 40 +- README.md | 204 +- Rakefile | 148 +- _config.yml | 542 +- _data/nav.html | 18 +- _data/navigation.yml | 933 +-- _data/ui-text.yml | 1690 ++-- _includes/mermaid.html | 18 +- _includes/nav_list.html | 92 +- _includes/scripts.html | 128 +- _includes/search/algolia-search-scripts.html | 108 +- _includes/search/google-search-scripts.html | 58 +- _includes/search/lunr-search-scripts.html | 18 +- _includes/search/search_form.html | 52 +- _templates/flags.md | 10 +- _templates/template.md | 212 +- about.md | 52 +- assets/images/simulation/export.png | Bin 0 -> 23669 bytes .../images/simulation/onshape_link_names.png | Bin 0 -> 25901 bytes .../simulation/onshape_mate_connector.png | Bin 0 -> 85022 bytes .../simulation/onshape_revolute_joint.png | Bin 0 -> 275954 bytes .../simulation/onshape_revolute_mate_menu.png | Bin 0 -> 9259 bytes assets/images/simulation/urdf_validation.png | Bin 0 -> 194334 bytes assets/js/lunr/lunr-en.js | 146 +- assets/js/lunr/lunr-gr.js | 1052 +-- assets/js/lunr/lunr-store.js | 150 +- assets/js/lunr/lunr.js | 6968 ++++++++--------- date.bash | 36 +- docs/index.md | 268 +- index.md | 28 +- ...suit-Controller-for-Skid-Steering-Robot.md | 178 +- wiki/actuation/__all_subsections.md | 2154 ++--- wiki/actuation/drive-by-wire.md | 130 +- wiki/actuation/index.md | 106 +- wiki/actuation/linear-actuator-resources.md | 258 +- wiki/actuation/model-predictive-control.md | 456 +- wiki/actuation/motor-controller-feedback.md | 14 +- wiki/actuation/moveit-and-HEBI-integration.md | 510 +- wiki/actuation/pid-control-arduino.md | 22 +- wiki/actuation/task-prioritization-control.md | 436 +- wiki/actuation/uln2003a-motor-controller.md | 28 +- .../vedder-electronic-speed-controller.md | 74 +- wiki/common-platforms/__all_subsections.md | 3070 ++++---- .../asctec-uav-setup-guide.md | 422 +- ...custom-drone-for-darpa-triage-challenge.md | 846 +- .../configure-vscode-for-ros2.md | 438 +- ...-drone-breakdown-for-technical-projects.md | 178 +- wiki/common-platforms/dji-sdk.md | 48 +- wiki/common-platforms/hello-robot.md | 230 +- .../husky_interfacing_and_communication.md | 88 +- wiki/common-platforms/index.md | 206 +- .../interfacing-with-nvidia-orin.md | 244 +- wiki/common-platforms/khepera4.md | 186 +- wiki/common-platforms/pixhawk.md | 230 +- .../rccars-the-complete-guide.md | 130 +- .../ros/ros-arduino-interface.md | 414 +- wiki/common-platforms/ros/ros-cost-maps.md | 520 +- .../ros/ros-global-planner.md | 70 +- wiki/common-platforms/ros/ros-intro.md | 66 +- .../ros/ros-mapping-localization.md | 602 +- .../ros/ros-motion-server-framework.md | 302 +- wiki/common-platforms/ros/ros-navigation.md | 170 +- .../ros/ros-unsupported-os.md | 374 +- .../ros/ros2-custom-package.md | 960 +-- .../ros2-navigation-for-clearpath-husky.md | 800 +- wiki/common-platforms/unitree-g1.md | 224 +- wiki/common-platforms/unitree-go1.md | 204 +- wiki/common-platforms/ur5e.md | 276 +- wiki/computing/__all_subsections.md | 1616 ++-- wiki/computing/arduino.md | 220 +- wiki/computing/aws-quickstart.md | 148 +- .../comparing-cots-embedded-systems.md | 268 +- wiki/computing/index.md | 102 +- wiki/computing/jetson-orin-agx.md | 314 +- .../setup-gpus-for-computer-vision.md | 860 +- wiki/computing/single-board-computers.md | 110 +- .../troubleshooting-ubuntu-dual-boot.md | 140 +- wiki/computing/ubuntu-chromebook.md | 54 +- wiki/computing/upgrading-ubuntu-kernel.md | 46 +- wiki/datasets/__all_subsections.md | 472 +- wiki/datasets/index.md | 110 +- wiki/datasets/open-source-datasets.md | 272 +- wiki/datasets/traffic-modelling-datasets.md | 192 +- wiki/fabrication/3d-printers.md | 224 +- wiki/fabrication/__all_subsections.md | 1008 +-- wiki/fabrication/cube-pro.md | 52 +- ...rication_considerations_for_3D_printing.md | 290 +- wiki/fabrication/index.md | 114 +- wiki/fabrication/machining-prototyping.md | 14 +- wiki/fabrication/makerbot-replicator-2x.md | 112 +- wiki/fabrication/milling-process.md | 18 +- wiki/fabrication/onshape-tutorial.md | 776 +- wiki/fabrication/rapid-prototyping.md | 52 +- wiki/fabrication/series-A-pro.md | 122 +- wiki/fabrication/soldering.md | 52 +- wiki/fabrication/turning-process.md | 16 +- wiki/index.md | 36 +- wiki/interfacing/__all_subsections.md | 1484 ++-- ...le-vision-pro-for-robotics-applications.md | 570 +- wiki/interfacing/blink-1-led.md | 110 +- wiki/interfacing/buffer-issues.md | 226 +- wiki/interfacing/index.md | 88 +- .../microros-for-ros2-on-microcontrollers.md | 962 +-- wiki/interfacing/myo.md | 102 +- wiki/interfacing/ros1_ros2_bridge.md | 304 +- wiki/machine-learning/__all_subsections.md | 2716 +++---- wiki/machine-learning/custom-semantic-data.md | 120 +- .../distributed-training-with-pytorch.md | 558 +- .../grpo-diffusion-policies.md | 560 +- wiki/machine-learning/imitation-learning.md | 534 +- wiki/machine-learning/index.md | 122 +- wiki/machine-learning/intro-to-diffusion.md | 702 +- wiki/machine-learning/intro-to-rl.md | 240 +- .../mediapipe-live-ml-anywhere.md | 294 +- wiki/machine-learning/nlp-for-robotics.md | 400 +- ...on-libraries-for-reinforcement-learning.md | 244 +- wiki/machine-learning/ros-yolo-gpu.md | 428 +- .../train-darknet-on-custom-dataset.md | 594 +- wiki/machine-learning/yolov5-tensorrt.md | 366 +- wiki/manipulators/index.md | 32 +- ...ting-kuka-lbr-manipulators-with-moveit2.md | 240 +- wiki/math/__all_subsections.md | 638 +- ...gaussian-process-gaussian-mixture-model.md | 368 +- wiki/math/index.md | 64 +- wiki/math/registration-techniques.md | 262 +- wiki/networking/__all_subsections.md | 624 +- wiki/networking/bluetooth-sockets.md | 140 +- .../gstreamer-jetson-realtime-video.md | 914 +-- wiki/networking/index.md | 94 +- wiki/networking/rocon-multi-master.md | 54 +- wiki/networking/ros-distributed.md | 134 +- wiki/networking/wifi-hotspot.md | 86 +- wiki/networking/xbee-pro-digimesh-900.md | 164 +- wiki/planning/__all_subsections.md | 1782 ++--- .../advanced-moveit-manipulator-planning.md | 222 +- .../astar_planning_implementation_guide.md | 218 +- wiki/planning/behavior-tree.md | 3490 ++++----- .../coverage-planning-implementation-guide.md | 214 +- wiki/planning/frenet-frame-planning.md | 238 +- wiki/planning/glop.md | 694 +- wiki/planning/index.md | 106 +- wiki/planning/move_base_flex.md | 442 +- wiki/planning/multi-robot-planning.md | 252 +- wiki/planning/pilz-chomp.md | 360 +- wiki/planning/planning-overview.md | 234 +- wiki/planning/resolved-rates.md | 148 +- wiki/programming/__all_subsections.md | 1086 +-- wiki/programming/boost-library.md | 32 +- wiki/programming/boost-maps-vectors.md | 56 +- wiki/programming/build-from-source.md | 436 +- wiki/programming/cmake.md | 158 +- wiki/programming/eigen-library.md | 84 +- wiki/programming/git.md | 138 +- wiki/programming/index.md | 148 +- wiki/programming/multithreaded-programming.md | 144 +- wiki/programming/programming-interviews.md | 174 +- wiki/programming/python-construct.md | 254 +- wiki/programming/tutorials-resources.md | 52 +- wiki/programming/yasmin-ros2-state-machine.md | 302 +- wiki/project-management/__all_subsections.md | 1228 +-- .../drone-flight-permissions.md | 320 +- wiki/project-management/index.md | 124 +- wiki/project-management/jira.md | 294 +- .../product-development-complex-systems.md | 98 +- wiki/project-management/risk-management.md | 94 +- .../using-notion-for-project-management.md | 400 +- wiki/reinforcement-learning/index.md | 58 +- .../intro-to-policy-gradient-methods.md | 304 +- .../key-concepts-in-rl.md | 176 +- .../reinforcement-learning-algorithms.md | 358 +- .../value-based-reinforcement-learning.md | 254 +- .../choose-a-language.md | 308 +- wiki/robotics-project-guide/choose-a-robot.md | 640 +- wiki/robotics-project-guide/choose-a-sim.md | 722 +- wiki/robotics-project-guide/choose-comm.md | 288 +- .../define-your-goals-and-requirements.md | 608 +- wiki/robotics-project-guide/demo-day.md | 248 +- wiki/robotics-project-guide/index.md | 12 +- wiki/robotics-project-guide/make-a-robot.md | 348 +- wiki/robotics-project-guide/master-guide.md | 116 +- wiki/robotics-project-guide/test-and-debug.md | 846 +- wiki/sensing/___all_subsections.md | 3172 ++++---- wiki/sensing/adafruit-gps.md | 72 +- wiki/sensing/apple-vision-pro.md | 252 +- wiki/sensing/apriltags.md | 96 +- wiki/sensing/azure-block-detection.md | 142 +- wiki/sensing/camera-calibration.md | 26 +- wiki/sensing/camera-imu-calibration.md | 210 +- .../sensing/computer-vision-considerations.md | 90 +- wiki/sensing/delphi-esr-radar.md | 44 +- wiki/sensing/fiducial-markers.md | 178 +- wiki/sensing/gps.md | 122 +- wiki/sensing/hololens-101.md | 592 +- wiki/sensing/index.md | 184 +- wiki/sensing/opencv-stereo.md | 26 +- wiki/sensing/pcl.md | 446 +- wiki/sensing/photometric-calibration.md | 126 +- wiki/sensing/realsense.md | 386 +- wiki/sensing/robotic-total-stations.md | 156 +- wiki/sensing/sensor-noise.md | 352 +- wiki/sensing/speech-recognition.md | 274 +- wiki/sensing/stag.md | 162 +- wiki/sensing/thermal-cameras.md | 200 +- .../trajectory_extraction_static_camera.md | 164 +- .../ultrawideband-beacon-positioning.md | 146 +- ...uilding-a-Light-Weight-Custom-Simulator.md | 74 +- ...gn-considerations-for-ROS-architectures.md | 98 +- wiki/simulation/NDT-Matching-with-Autoware.md | 108 +- ...wning-and-Controlling-Vehicles-in-CARLA.md | 246 +- wiki/simulation/__all_subsections.md | 772 +- wiki/simulation/cad-to-urdf.md | 313 + ...tion-of-graspable-and-breakable-objects.md | 204 +- wiki/simulation/index.md | 97 +- .../simulating-vehicle-using-autoware.md | 224 +- wiki/simulation/simulation-isaacsim-setup.md | 360 +- .../Cartographer-ROS-Integration.md | 322 +- .../state-estimation/OculusPrimeNavigation.md | 86 +- wiki/state-estimation/__all_subsections.md | 2432 +++--- .../adaptive-monte-carlo-localization.md | 184 +- wiki/state-estimation/g2o-pose-graphs.md | 158 +- .../gps-lacking-state-estimation-sensors.md | 108 +- wiki/state-estimation/index.md | 162 +- wiki/state-estimation/orb-slam2-setup.md | 502 +- .../radar-camera-sensor-fusion.md | 362 +- wiki/state-estimation/ros-cost-maps.md | 428 +- .../ros-mapping-localization.md | 40 +- wiki/state-estimation/ros-navigation.md | 170 +- wiki/state-estimation/sbpl-lattice-planner.md | 66 +- wiki/state-estimation/visual-servoing.md | 104 +- .../__all_subsections.md | 1088 +-- .../cable-management.md | 220 +- .../finite-state-machine.md | 544 +- wiki/system-design-development/index.md | 122 +- .../mechanical-design.md | 28 +- wiki/system-design-development/pcb-design.md | 292 +- .../subsystem-interface-modeling.md | 276 +- .../system-engineering.md | 8 +- wiki/tools/Qtcreator-ros.md | 612 +- wiki/tools/__all_subsections.md | 4708 +++++------ wiki/tools/altium-circuitmaker.md | 100 +- wiki/tools/clion.md | 228 +- ...editors-introduction-to-vs-code-and-vim.md | 374 +- wiki/tools/docker-for-pytorch.md | 288 +- wiki/tools/docker-security.md | 540 +- wiki/tools/gazebo-simulation.md | 292 +- wiki/tools/index.md | 12 +- wiki/tools/mapviz.md | 706 +- wiki/tools/ros-gui.md | 730 +- wiki/tools/ros2-humble-ipc-recorder.md | 726 +- wiki/tools/rosbags-matlab.md | 40 +- wiki/tools/roslibjs.md | 362 +- wiki/tools/solidworks.md | 92 +- wiki/tools/tmux.md | 94 +- wiki/tools/udev-rules.md | 68 +- wiki/tools/vim.md | 24 +- wiki/tools/visualization-simulation.md | 90 +- wiki/tools/webots.md | 256 +- 263 files changed, 50304 insertions(+), 49985 deletions(-) create mode 100644 assets/images/simulation/export.png create mode 100644 assets/images/simulation/onshape_link_names.png create mode 100644 assets/images/simulation/onshape_mate_connector.png create mode 100644 assets/images/simulation/onshape_revolute_joint.png create mode 100644 assets/images/simulation/onshape_revolute_mate_menu.png create mode 100644 assets/images/simulation/urdf_validation.png create mode 100644 wiki/simulation/cad-to-urdf.md diff --git a/.github/workflows/jekyll-github-pages-deploy.yml b/.github/workflows/jekyll-github-pages-deploy.yml index e9168195..714b06ac 100644 --- a/.github/workflows/jekyll-github-pages-deploy.yml +++ b/.github/workflows/jekyll-github-pages-deploy.yml @@ -1,62 +1,62 @@ -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. - -# Sample workflow for building and deploying a Jekyll site to GitHub Pages -name: Deploy Jekyll site to Pages - -on: - # Runs on pushes targeting the default branch - push: - branches: ["master", "deployment-test"] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow one concurrent deployment -concurrency: - group: "pages" - cancel-in-progress: true - -jobs: - # Build job - build: - runs-on: ubuntu-22.04 - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Setup Ruby - uses: ruby/setup-ruby@v1 - with: - bundler-cache: true # runs 'bundle install' and caches installed gems automatically - cache-version: 0 # Increment this number if you need to re-download cached gems - - name: Setup Pages - id: pages - uses: actions/configure-pages@v5 - - name: Build with Jekyll - # Outputs to the './_site' directory by default - run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" - env: - JEKYLL_ENV: production - - name: Upload artifact - # Automatically uploads an artifact from the './_site' directory by default - uses: actions/upload-pages-artifact@v3 - - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +# Sample workflow for building and deploying a Jekyll site to GitHub Pages +name: Deploy Jekyll site to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["master", "deployment-test"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow one concurrent deployment +concurrency: + group: "pages" + cancel-in-progress: true + +jobs: + # Build job + build: + runs-on: ubuntu-22.04 + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Ruby + uses: ruby/setup-ruby@v1 + with: + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + cache-version: 0 # Increment this number if you need to re-download cached gems + - name: Setup Pages + id: pages + uses: actions/configure-pages@v5 + - name: Build with Jekyll + # Outputs to the './_site' directory by default + run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" + env: + JEKYLL_ENV: production + - name: Upload artifact + # Automatically uploads an artifact from the './_site' directory by default + uses: actions/upload-pages-artifact@v3 + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.gitignore b/.gitignore index 37881a2c..f21ae72e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,12 @@ -# Ignore metadata generated by Jekyll -_site/ -.sass-cache/ -.jekyll-cache/ -.jekyll-metadata - -# Ignore folders generated by Bundler -.bundle/ -vendor/ - -# Ignore others -.DS_Store +# Ignore metadata generated by Jekyll +_site/ +.sass-cache/ +.jekyll-cache/ +.jekyll-metadata + +# Ignore folders generated by Bundler +.bundle/ +vendor/ + +# Ignore others +.DS_Store diff --git a/.ruby-version b/.ruby-version index acf9bf09..be94e6f5 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.2.2 \ No newline at end of file +3.2.2 diff --git a/404.html b/404.html index c472b4ea..9a13bf57 100644 --- a/404.html +++ b/404.html @@ -1,24 +1,24 @@ ---- -layout: default ---- - - - -
-

404

- -

Page not found :(

-

The requested page could not be found.

-
+--- +layout: default +--- + + + +
+

404

+ +

Page not found :(

+

The requested page could not be found.

+
diff --git a/Gemfile b/Gemfile index b22a93d2..15da6c43 100644 --- a/Gemfile +++ b/Gemfile @@ -1,19 +1,19 @@ -source "https://rubygems.org" - -gem "github-pages", "~> 232", group: :jekyll_plugins - -group :jekyll_plugins do - gem "jekyll-paginate" - gem "jekyll-sitemap" - gem "jekyll-gist" - gem "jekyll-feed" - gem "jemoji" -end - - -gem "nokogiri", ">= 1.10.8" -gem "kramdown", ">= 2.3.0" -gem 'webrick', "~> 1.7" -gem "minimal-mistakes-jekyll" - - +source "https://rubygems.org" + +gem "github-pages", "~> 232", group: :jekyll_plugins + +group :jekyll_plugins do + gem "jekyll-paginate" + gem "jekyll-sitemap" + gem "jekyll-gist" + gem "jekyll-feed" + gem "jemoji" +end + + +gem "nokogiri", ">= 1.10.8" +gem "kramdown", ">= 2.3.0" +gem 'webrick', "~> 1.7" +gem "minimal-mistakes-jekyll" + + diff --git a/Gemfile.lock b/Gemfile.lock index 32597129..aaebe2e1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,302 +1,302 @@ -GEM - remote: https://rubygems.org/ - specs: - activesupport (8.1.2) - base64 - bigdecimal - concurrent-ruby (~> 1.0, >= 1.3.1) - connection_pool (>= 2.2.5) - drb - i18n (>= 1.6, < 2) - json - logger (>= 1.4.2) - minitest (>= 5.1) - securerandom (>= 0.3) - tzinfo (~> 2.0, >= 2.0.5) - uri (>= 0.13.1) - addressable (2.8.8) - public_suffix (>= 2.0.2, < 8.0) - base64 (0.3.0) - bigdecimal (4.0.1) - coffee-script (2.4.1) - coffee-script-source - execjs - coffee-script-source (1.12.2) - colorator (1.1.0) - commonmarker (0.23.12) - concurrent-ruby (1.3.6) - connection_pool (3.0.2) - csv (3.3.5) - dnsruby (1.73.1) - base64 (>= 0.2) - logger (~> 1.6) - simpleidn (~> 0.2.1) - drb (2.2.3) - em-websocket (0.5.3) - eventmachine (>= 0.12.9) - http_parser.rb (~> 0) - ethon (0.15.0) - ffi (>= 1.15.0) - eventmachine (1.2.7) - execjs (2.10.0) - faraday (2.14.1) - faraday-net_http (>= 2.0, < 3.5) - json - logger - faraday-net_http (3.4.2) - net-http (~> 0.5) - ffi (1.17.3) - forwardable-extended (2.6.0) - gemoji (4.1.0) - github-pages (232) - github-pages-health-check (= 1.18.2) - jekyll (= 3.10.0) - jekyll-avatar (= 0.8.0) - jekyll-coffeescript (= 1.2.2) - jekyll-commonmark-ghpages (= 0.5.1) - jekyll-default-layout (= 0.1.5) - jekyll-feed (= 0.17.0) - jekyll-gist (= 1.5.0) - jekyll-github-metadata (= 2.16.1) - jekyll-include-cache (= 0.2.1) - jekyll-mentions (= 1.6.0) - jekyll-optional-front-matter (= 0.3.2) - jekyll-paginate (= 1.1.0) - jekyll-readme-index (= 0.3.0) - jekyll-redirect-from (= 0.16.0) - jekyll-relative-links (= 0.6.1) - jekyll-remote-theme (= 0.4.3) - jekyll-sass-converter (= 1.5.2) - jekyll-seo-tag (= 2.8.0) - jekyll-sitemap (= 1.4.0) - jekyll-swiss (= 1.0.0) - jekyll-theme-architect (= 0.2.0) - jekyll-theme-cayman (= 0.2.0) - jekyll-theme-dinky (= 0.2.0) - jekyll-theme-hacker (= 0.2.0) - jekyll-theme-leap-day (= 0.2.0) - jekyll-theme-merlot (= 0.2.0) - jekyll-theme-midnight (= 0.2.0) - jekyll-theme-minimal (= 0.2.0) - jekyll-theme-modernist (= 0.2.0) - jekyll-theme-primer (= 0.6.0) - jekyll-theme-slate (= 0.2.0) - jekyll-theme-tactile (= 0.2.0) - jekyll-theme-time-machine (= 0.2.0) - jekyll-titles-from-headings (= 0.5.3) - jemoji (= 0.13.0) - kramdown (= 2.4.0) - kramdown-parser-gfm (= 1.1.0) - liquid (= 4.0.4) - mercenary (~> 0.3) - minima (= 2.5.1) - nokogiri (>= 1.16.2, < 2.0) - rouge (= 3.30.0) - terminal-table (~> 1.4) - webrick (~> 1.8) - github-pages-health-check (1.18.2) - addressable (~> 2.3) - dnsruby (~> 1.60) - octokit (>= 4, < 8) - public_suffix (>= 3.0, < 6.0) - typhoeus (~> 1.3) - html-pipeline (2.14.3) - activesupport (>= 2) - nokogiri (>= 1.4) - http_parser.rb (0.8.1) - i18n (1.14.8) - concurrent-ruby (~> 1.0) - jekyll (3.10.0) - addressable (~> 2.4) - colorator (~> 1.0) - csv (~> 3.0) - em-websocket (~> 0.5) - i18n (>= 0.7, < 2) - jekyll-sass-converter (~> 1.0) - jekyll-watch (~> 2.0) - kramdown (>= 1.17, < 3) - liquid (~> 4.0) - mercenary (~> 0.3.3) - pathutil (~> 0.9) - rouge (>= 1.7, < 4) - safe_yaml (~> 1.0) - webrick (>= 1.0) - jekyll-avatar (0.8.0) - jekyll (>= 3.0, < 5.0) - jekyll-coffeescript (1.2.2) - coffee-script (~> 2.2) - coffee-script-source (~> 1.12) - jekyll-commonmark (1.4.0) - commonmarker (~> 0.22) - jekyll-commonmark-ghpages (0.5.1) - commonmarker (>= 0.23.7, < 1.1.0) - jekyll (>= 3.9, < 4.0) - jekyll-commonmark (~> 1.4.0) - rouge (>= 2.0, < 5.0) - jekyll-default-layout (0.1.5) - jekyll (>= 3.0, < 5.0) - jekyll-feed (0.17.0) - jekyll (>= 3.7, < 5.0) - jekyll-gist (1.5.0) - octokit (~> 4.2) - jekyll-github-metadata (2.16.1) - jekyll (>= 3.4, < 5.0) - octokit (>= 4, < 7, != 4.4.0) - jekyll-include-cache (0.2.1) - jekyll (>= 3.7, < 5.0) - jekyll-mentions (1.6.0) - html-pipeline (~> 2.3) - jekyll (>= 3.7, < 5.0) - jekyll-optional-front-matter (0.3.2) - jekyll (>= 3.0, < 5.0) - jekyll-paginate (1.1.0) - jekyll-readme-index (0.3.0) - jekyll (>= 3.0, < 5.0) - jekyll-redirect-from (0.16.0) - jekyll (>= 3.3, < 5.0) - jekyll-relative-links (0.6.1) - jekyll (>= 3.3, < 5.0) - jekyll-remote-theme (0.4.3) - addressable (~> 2.0) - jekyll (>= 3.5, < 5.0) - jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0) - rubyzip (>= 1.3.0, < 3.0) - jekyll-sass-converter (1.5.2) - sass (~> 3.4) - jekyll-seo-tag (2.8.0) - jekyll (>= 3.8, < 5.0) - jekyll-sitemap (1.4.0) - jekyll (>= 3.7, < 5.0) - jekyll-swiss (1.0.0) - jekyll-theme-architect (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-cayman (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-dinky (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-hacker (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-leap-day (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-merlot (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-midnight (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-minimal (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-modernist (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-primer (0.6.0) - jekyll (> 3.5, < 5.0) - jekyll-github-metadata (~> 2.9) - jekyll-seo-tag (~> 2.0) - jekyll-theme-slate (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-tactile (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-theme-time-machine (0.2.0) - jekyll (> 3.5, < 5.0) - jekyll-seo-tag (~> 2.0) - jekyll-titles-from-headings (0.5.3) - jekyll (>= 3.3, < 5.0) - jekyll-watch (2.2.1) - listen (~> 3.0) - jemoji (0.13.0) - gemoji (>= 3, < 5) - html-pipeline (~> 2.2) - jekyll (>= 3.0, < 5.0) - json (2.18.1) - kramdown (2.4.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) - liquid (4.0.4) - listen (3.10.0) - logger - rb-fsevent (~> 0.10, >= 0.10.3) - rb-inotify (~> 0.9, >= 0.9.10) - logger (1.7.0) - mercenary (0.3.6) - mini_portile2 (2.8.9) - minima (2.5.1) - jekyll (>= 3.5, < 5.0) - jekyll-feed (~> 0.9) - jekyll-seo-tag (~> 2.1) - minimal-mistakes-jekyll (4.27.3) - jekyll (>= 3.7, < 5.0) - jekyll-feed (~> 0.1) - jekyll-gist (~> 1.5) - jekyll-include-cache (~> 0.1) - jekyll-paginate (~> 1.1) - jekyll-sitemap (~> 1.3) - minitest (6.0.2) - drb (~> 2.0) - prism (~> 1.5) - net-http (0.9.1) - uri (>= 0.11.1) - nokogiri (1.19.1) - mini_portile2 (~> 2.8.2) - racc (~> 1.4) - octokit (4.25.1) - faraday (>= 1, < 3) - sawyer (~> 0.9) - pathutil (0.16.2) - forwardable-extended (~> 2.6) - prism (1.9.0) - public_suffix (5.1.1) - racc (1.8.1) - rb-fsevent (0.11.2) - rb-inotify (0.11.1) - ffi (~> 1.0) - rexml (3.4.4) - rouge (3.30.0) - rubyzip (2.4.1) - safe_yaml (1.0.5) - sass (3.7.4) - sass-listen (~> 4.0.0) - sass-listen (4.0.0) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - sawyer (0.9.3) - addressable (>= 2.3.5) - faraday (>= 0.17.3, < 3) - securerandom (0.4.1) - simpleidn (0.2.3) - terminal-table (1.8.0) - unicode-display_width (~> 1.1, >= 1.1.1) - typhoeus (1.5.0) - ethon (>= 0.9.0, < 0.16.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - unicode-display_width (1.8.0) - uri (1.1.1) - webrick (1.9.2) - -PLATFORMS - ruby - -DEPENDENCIES - github-pages (~> 232) - jekyll-feed - jekyll-gist - jekyll-paginate - jekyll-sitemap - jemoji - kramdown (>= 2.3.0) - minimal-mistakes-jekyll - nokogiri (>= 1.10.8) - webrick (~> 1.7) - -BUNDLED WITH - 2.1.4 +GEM + remote: https://rubygems.org/ + specs: + activesupport (8.1.2) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + json + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + addressable (2.8.8) + public_suffix (>= 2.0.2, < 8.0) + base64 (0.3.0) + bigdecimal (4.0.1) + coffee-script (2.4.1) + coffee-script-source + execjs + coffee-script-source (1.12.2) + colorator (1.1.0) + commonmarker (0.23.12) + concurrent-ruby (1.3.6) + connection_pool (3.0.2) + csv (3.3.5) + dnsruby (1.73.1) + base64 (>= 0.2) + logger (~> 1.6) + simpleidn (~> 0.2.1) + drb (2.2.3) + em-websocket (0.5.3) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0) + ethon (0.15.0) + ffi (>= 1.15.0) + eventmachine (1.2.7) + execjs (2.10.0) + faraday (2.14.1) + faraday-net_http (>= 2.0, < 3.5) + json + logger + faraday-net_http (3.4.2) + net-http (~> 0.5) + ffi (1.17.3) + forwardable-extended (2.6.0) + gemoji (4.1.0) + github-pages (232) + github-pages-health-check (= 1.18.2) + jekyll (= 3.10.0) + jekyll-avatar (= 0.8.0) + jekyll-coffeescript (= 1.2.2) + jekyll-commonmark-ghpages (= 0.5.1) + jekyll-default-layout (= 0.1.5) + jekyll-feed (= 0.17.0) + jekyll-gist (= 1.5.0) + jekyll-github-metadata (= 2.16.1) + jekyll-include-cache (= 0.2.1) + jekyll-mentions (= 1.6.0) + jekyll-optional-front-matter (= 0.3.2) + jekyll-paginate (= 1.1.0) + jekyll-readme-index (= 0.3.0) + jekyll-redirect-from (= 0.16.0) + jekyll-relative-links (= 0.6.1) + jekyll-remote-theme (= 0.4.3) + jekyll-sass-converter (= 1.5.2) + jekyll-seo-tag (= 2.8.0) + jekyll-sitemap (= 1.4.0) + jekyll-swiss (= 1.0.0) + jekyll-theme-architect (= 0.2.0) + jekyll-theme-cayman (= 0.2.0) + jekyll-theme-dinky (= 0.2.0) + jekyll-theme-hacker (= 0.2.0) + jekyll-theme-leap-day (= 0.2.0) + jekyll-theme-merlot (= 0.2.0) + jekyll-theme-midnight (= 0.2.0) + jekyll-theme-minimal (= 0.2.0) + jekyll-theme-modernist (= 0.2.0) + jekyll-theme-primer (= 0.6.0) + jekyll-theme-slate (= 0.2.0) + jekyll-theme-tactile (= 0.2.0) + jekyll-theme-time-machine (= 0.2.0) + jekyll-titles-from-headings (= 0.5.3) + jemoji (= 0.13.0) + kramdown (= 2.4.0) + kramdown-parser-gfm (= 1.1.0) + liquid (= 4.0.4) + mercenary (~> 0.3) + minima (= 2.5.1) + nokogiri (>= 1.16.2, < 2.0) + rouge (= 3.30.0) + terminal-table (~> 1.4) + webrick (~> 1.8) + github-pages-health-check (1.18.2) + addressable (~> 2.3) + dnsruby (~> 1.60) + octokit (>= 4, < 8) + public_suffix (>= 3.0, < 6.0) + typhoeus (~> 1.3) + html-pipeline (2.14.3) + activesupport (>= 2) + nokogiri (>= 1.4) + http_parser.rb (0.8.1) + i18n (1.14.8) + concurrent-ruby (~> 1.0) + jekyll (3.10.0) + addressable (~> 2.4) + colorator (~> 1.0) + csv (~> 3.0) + em-websocket (~> 0.5) + i18n (>= 0.7, < 2) + jekyll-sass-converter (~> 1.0) + jekyll-watch (~> 2.0) + kramdown (>= 1.17, < 3) + liquid (~> 4.0) + mercenary (~> 0.3.3) + pathutil (~> 0.9) + rouge (>= 1.7, < 4) + safe_yaml (~> 1.0) + webrick (>= 1.0) + jekyll-avatar (0.8.0) + jekyll (>= 3.0, < 5.0) + jekyll-coffeescript (1.2.2) + coffee-script (~> 2.2) + coffee-script-source (~> 1.12) + jekyll-commonmark (1.4.0) + commonmarker (~> 0.22) + jekyll-commonmark-ghpages (0.5.1) + commonmarker (>= 0.23.7, < 1.1.0) + jekyll (>= 3.9, < 4.0) + jekyll-commonmark (~> 1.4.0) + rouge (>= 2.0, < 5.0) + jekyll-default-layout (0.1.5) + jekyll (>= 3.0, < 5.0) + jekyll-feed (0.17.0) + jekyll (>= 3.7, < 5.0) + jekyll-gist (1.5.0) + octokit (~> 4.2) + jekyll-github-metadata (2.16.1) + jekyll (>= 3.4, < 5.0) + octokit (>= 4, < 7, != 4.4.0) + jekyll-include-cache (0.2.1) + jekyll (>= 3.7, < 5.0) + jekyll-mentions (1.6.0) + html-pipeline (~> 2.3) + jekyll (>= 3.7, < 5.0) + jekyll-optional-front-matter (0.3.2) + jekyll (>= 3.0, < 5.0) + jekyll-paginate (1.1.0) + jekyll-readme-index (0.3.0) + jekyll (>= 3.0, < 5.0) + jekyll-redirect-from (0.16.0) + jekyll (>= 3.3, < 5.0) + jekyll-relative-links (0.6.1) + jekyll (>= 3.3, < 5.0) + jekyll-remote-theme (0.4.3) + addressable (~> 2.0) + jekyll (>= 3.5, < 5.0) + jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0) + rubyzip (>= 1.3.0, < 3.0) + jekyll-sass-converter (1.5.2) + sass (~> 3.4) + jekyll-seo-tag (2.8.0) + jekyll (>= 3.8, < 5.0) + jekyll-sitemap (1.4.0) + jekyll (>= 3.7, < 5.0) + jekyll-swiss (1.0.0) + jekyll-theme-architect (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-cayman (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-dinky (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-hacker (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-leap-day (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-merlot (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-midnight (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-minimal (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-modernist (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-primer (0.6.0) + jekyll (> 3.5, < 5.0) + jekyll-github-metadata (~> 2.9) + jekyll-seo-tag (~> 2.0) + jekyll-theme-slate (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-tactile (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-theme-time-machine (0.2.0) + jekyll (> 3.5, < 5.0) + jekyll-seo-tag (~> 2.0) + jekyll-titles-from-headings (0.5.3) + jekyll (>= 3.3, < 5.0) + jekyll-watch (2.2.1) + listen (~> 3.0) + jemoji (0.13.0) + gemoji (>= 3, < 5) + html-pipeline (~> 2.2) + jekyll (>= 3.0, < 5.0) + json (2.18.1) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + liquid (4.0.4) + listen (3.10.0) + logger + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + logger (1.7.0) + mercenary (0.3.6) + mini_portile2 (2.8.9) + minima (2.5.1) + jekyll (>= 3.5, < 5.0) + jekyll-feed (~> 0.9) + jekyll-seo-tag (~> 2.1) + minimal-mistakes-jekyll (4.27.3) + jekyll (>= 3.7, < 5.0) + jekyll-feed (~> 0.1) + jekyll-gist (~> 1.5) + jekyll-include-cache (~> 0.1) + jekyll-paginate (~> 1.1) + jekyll-sitemap (~> 1.3) + minitest (6.0.2) + drb (~> 2.0) + prism (~> 1.5) + net-http (0.9.1) + uri (>= 0.11.1) + nokogiri (1.19.1) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + octokit (4.25.1) + faraday (>= 1, < 3) + sawyer (~> 0.9) + pathutil (0.16.2) + forwardable-extended (~> 2.6) + prism (1.9.0) + public_suffix (5.1.1) + racc (1.8.1) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + rexml (3.4.4) + rouge (3.30.0) + rubyzip (2.4.1) + safe_yaml (1.0.5) + sass (3.7.4) + sass-listen (~> 4.0.0) + sass-listen (4.0.0) + rb-fsevent (~> 0.9, >= 0.9.4) + rb-inotify (~> 0.9, >= 0.9.7) + sawyer (0.9.3) + addressable (>= 2.3.5) + faraday (>= 0.17.3, < 3) + securerandom (0.4.1) + simpleidn (0.2.3) + terminal-table (1.8.0) + unicode-display_width (~> 1.1, >= 1.1.1) + typhoeus (1.5.0) + ethon (>= 0.9.0, < 0.16.0) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (1.8.0) + uri (1.1.1) + webrick (1.9.2) + +PLATFORMS + ruby + +DEPENDENCIES + github-pages (~> 232) + jekyll-feed + jekyll-gist + jekyll-paginate + jekyll-sitemap + jemoji + kramdown (>= 2.3.0) + minimal-mistakes-jekyll + nokogiri (>= 1.10.8) + webrick (~> 1.7) + +BUNDLED WITH + 2.1.4 diff --git a/LICENSE.txt b/LICENSE.txt index b7cc9a0d..123440b2 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,21 +1,21 @@ -The MIT License (MIT) - -Copyright (c) 2017 Michael Rose - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +The MIT License (MIT) + +Copyright (c) 2017 Michael Rose + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index 9767b5b1..27e33a91 100644 --- a/README.md +++ b/README.md @@ -1,102 +1,102 @@ -# Robotics Knowledgebase 🤖 - -[![Jekyll Build](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io/actions/workflows/jekyll-github-pages-deploy.yml/badge.svg)](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io/actions/workflows/jekyll-github-pages-deploy.yml) -[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) - -The **Robotics Knowledgebase** is an open-source wiki for robot builders, researchers, and hobbyists. It focuses on the practical application details often omitted from textbooks—the "tribal knowledge" required to build, program, and deploy working robotic systems. - -We take a **systems-based approach**, integrating engineering best practices with hands-on implementation guides for modern robotics frameworks. - ---- - -## 🚀 Quickstart for Contributors - -We welcome contributions from the community! Whether you're fixing a typo or adding a new deep-dive article, here's how to get started. - -### Adding New Articles -1. **Fork** the repository and clone it locally. -2. **Choose a category** in the `/wiki` directory (e.g., `sensing`, `actuation`, `programming`). -3. **Template**: Copy `/_templates/template.md` to your chosen directory. -4. **Name**: Rename it using `kebab-case.md` (e.g., `my-new-sensor-guide.md`). -5. **Write**: Author your article using Markdown. - - Use absolute paths for images: `![Alt Text](/assets/images/my_image.png)`. - - Use absolute paths for internal links: `[Other Page](/wiki/category/other-page/)`. -6. **Navigation**: Add your entry to `/_data/navigation.yml` and the parent category's `index.md`. -7. **Build & Test**: See 'Local Development' below on instructions to build and deploylocally. Open all modified pages and verify your changes visually. -7. **PR**: Submit a Pull Request. Our editors will review and provide feedback. Follow through with changes until merge. - ---- - -## 🛠 Local Development - -To build and preview the site locally, we recommend using a Ruby virtual environment for dependency isolation. - -### Prerequisites -- **Ruby version manager**: We recommend [rbenv](https://github.com/rbenv/rbenv) to manage Ruby versions. - - **macOS**: `brew install rbenv` - - **Linux**: See the [rbenv installer](https://github.com/rbenv/rbenv-installer) or use your package manager. - -### Setup and Build -1. **Install Ruby**: - From root of the project, run: - ```bash - rbenv install $(cat .ruby-version) - ``` -2. **Install Bundler**: - ```bash - gem install bundler - ``` -3. **Configure local path**: - ```bash - bundle config set --local path 'vendor/bundle' - ``` -4. **Install dependencies**: - ```bash - bundle install - ``` -5. **Local Preview**: - ```bash - bundle exec jekyll serve - ``` - The site will be available at `http://localhost:4000`. - ---- - -## 📂 Project Structure - -### Supporting Technology -- **Engine**: [Jekyll](https://jekyllrb.com/) (Static Site Generator) -- **Theme**: [Minimal Mistakes](https://mmistakes.github.io/minimal-mistakes/) -- **Hosting**: [GitHub Pages](https://pages.github.com/) -- **Math**: [MathJax](https://www.mathjax.org/) (LaTeX rendering) - -### Key Directories -- `/wiki/`: The core content, organized by robotic subsystem. -- `/_data/`: Navigation and UI configuration. -- `/assets/images/`: Central store for all diagrams and photos. -- `/_templates/`: Base templates for new wiki entries. - ---- - -## 🗺 Wiki Categories - -- **[Controls & Actuation](/wiki/actuation/)**: Motors, PID, and motion control. -- **[Common Platforms](/wiki/common-platforms/)**: ROS, UAVs, and mobile bases. -- **[Computing](/wiki/computing/)**: SBCs, GPUs, and embedded controllers. -- **[Fabrication](/wiki/fabrication/)**: 3D printing, machining, and prototyping. -- **[Interfacing](/wiki/interfacing/)**: Microcontrollers and low-level protocols. -- **[Networking](/wiki/networking/)**: Communications and distributed systems. -- **[Programming](/wiki/programming/)**: Languages, libraries (Eigen, Boost), and practices. -- **[Project Management](/wiki/project-management/)**: Workflows for robotics teams. -- **[Sensing](/wiki/sensing/)**: Computer vision, LiDAR, and IMUs. -- **[State Estimation](/wiki/state-estimation/)**: SLAM, localization, and navigation. -- **[System Design](/wiki/system-design-development/)**: Systems engineering for robotics. -- **[Tools](/wiki/tools/)**: External software, editors, and utilities. - ---- - -## 🤝 Community & Support -If you find a bug or have a suggestion, please [open an issue](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io/issues) or join the discussion in our Pull Requests. - ---- -*Maintained by the Robotics Knowledgebase Team. Built for the community, by the community.* +# Robotics Knowledgebase 🤖 + +[![Jekyll Build](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io/actions/workflows/jekyll-github-pages-deploy.yml/badge.svg)](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io/actions/workflows/jekyll-github-pages-deploy.yml) +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) + +The **Robotics Knowledgebase** is an open-source wiki for robot builders, researchers, and hobbyists. It focuses on the practical application details often omitted from textbooks—the "tribal knowledge" required to build, program, and deploy working robotic systems. + +We take a **systems-based approach**, integrating engineering best practices with hands-on implementation guides for modern robotics frameworks. + +--- + +## 🚀 Quickstart for Contributors + +We welcome contributions from the community! Whether you're fixing a typo or adding a new deep-dive article, here's how to get started. + +### Adding New Articles +1. **Fork** the repository and clone it locally. +2. **Choose a category** in the `/wiki` directory (e.g., `sensing`, `actuation`, `programming`). +3. **Template**: Copy `/_templates/template.md` to your chosen directory. +4. **Name**: Rename it using `kebab-case.md` (e.g., `my-new-sensor-guide.md`). +5. **Write**: Author your article using Markdown. + - Use absolute paths for images: `![Alt Text](/assets/images/my_image.png)`. + - Use absolute paths for internal links: `[Other Page](/wiki/category/other-page/)`. +6. **Navigation**: Add your entry to `/_data/navigation.yml` and the parent category's `index.md`. +7. **Build & Test**: See 'Local Development' below on instructions to build and deploylocally. Open all modified pages and verify your changes visually. +7. **PR**: Submit a Pull Request. Our editors will review and provide feedback. Follow through with changes until merge. + +--- + +## 🛠 Local Development + +To build and preview the site locally, we recommend using a Ruby virtual environment for dependency isolation. + +### Prerequisites +- **Ruby version manager**: We recommend [rbenv](https://github.com/rbenv/rbenv) to manage Ruby versions. + - **macOS**: `brew install rbenv` + - **Linux**: See the [rbenv installer](https://github.com/rbenv/rbenv-installer) or use your package manager. + +### Setup and Build +1. **Install Ruby**: + From root of the project, run: + ```bash + rbenv install $(cat .ruby-version) + ``` +2. **Install Bundler**: + ```bash + gem install bundler + ``` +3. **Configure local path**: + ```bash + bundle config set --local path 'vendor/bundle' + ``` +4. **Install dependencies**: + ```bash + bundle install + ``` +5. **Local Preview**: + ```bash + bundle exec jekyll serve + ``` + The site will be available at `http://localhost:4000`. + +--- + +## 📂 Project Structure + +### Supporting Technology +- **Engine**: [Jekyll](https://jekyllrb.com/) (Static Site Generator) +- **Theme**: [Minimal Mistakes](https://mmistakes.github.io/minimal-mistakes/) +- **Hosting**: [GitHub Pages](https://pages.github.com/) +- **Math**: [MathJax](https://www.mathjax.org/) (LaTeX rendering) + +### Key Directories +- `/wiki/`: The core content, organized by robotic subsystem. +- `/_data/`: Navigation and UI configuration. +- `/assets/images/`: Central store for all diagrams and photos. +- `/_templates/`: Base templates for new wiki entries. + +--- + +## 🗺 Wiki Categories + +- **[Controls & Actuation](/wiki/actuation/)**: Motors, PID, and motion control. +- **[Common Platforms](/wiki/common-platforms/)**: ROS, UAVs, and mobile bases. +- **[Computing](/wiki/computing/)**: SBCs, GPUs, and embedded controllers. +- **[Fabrication](/wiki/fabrication/)**: 3D printing, machining, and prototyping. +- **[Interfacing](/wiki/interfacing/)**: Microcontrollers and low-level protocols. +- **[Networking](/wiki/networking/)**: Communications and distributed systems. +- **[Programming](/wiki/programming/)**: Languages, libraries (Eigen, Boost), and practices. +- **[Project Management](/wiki/project-management/)**: Workflows for robotics teams. +- **[Sensing](/wiki/sensing/)**: Computer vision, LiDAR, and IMUs. +- **[State Estimation](/wiki/state-estimation/)**: SLAM, localization, and navigation. +- **[System Design](/wiki/system-design-development/)**: Systems engineering for robotics. +- **[Tools](/wiki/tools/)**: External software, editors, and utilities. + +--- + +## 🤝 Community & Support +If you find a bug or have a suggestion, please [open an issue](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io/issues) or join the discussion in our Pull Requests. + +--- +*Maintained by the Robotics Knowledgebase Team. Built for the community, by the community.* diff --git a/Rakefile b/Rakefile index b3032a81..3df9d59e 100644 --- a/Rakefile +++ b/Rakefile @@ -1,74 +1,74 @@ -require "bundler/gem_tasks" -require "jekyll" -require "listen" - -def listen_ignore_paths(base, options) - [ - /_config\.ya?ml/, - /_site/, - /\.jekyll-metadata/ - ] -end - -def listen_handler(base, options) - site = Jekyll::Site.new(options) - Jekyll::Command.process_site(site) - proc do |modified, added, removed| - t = Time.now - c = modified + added + removed - n = c.length - relative_paths = c.map{ |p| Pathname.new(p).relative_path_from(base).to_s } - print Jekyll.logger.message("Regenerating:", "#{relative_paths.join(", ")} changed... ") - begin - Jekyll::Command.process_site(site) - puts "regenerated in #{Time.now - t} seconds." - rescue => e - puts "error:" - Jekyll.logger.warn "Error:", e.message - Jekyll.logger.warn "Error:", "Run jekyll build --trace for more information." - end - end -end - -task :preview do - base = Pathname.new('.').expand_path - options = { - "source" => base.join('test').to_s, - "destination" => base.join('test/_site').to_s, - "force_polling" => false, - "serving" => true, - "theme" => "minimal-mistakes-jekyll" - } - - options = Jekyll.configuration(options) - - ENV["LISTEN_GEM_DEBUGGING"] = "1" - listener = Listen.to( - base.join("_data"), - base.join("_includes"), - base.join("assets"), - options["source"], - :ignore => listen_ignore_paths(base, options), - :force_polling => options['force_polling'], - &(listen_handler(base, options)) - ) - - begin - listener.start - Jekyll.logger.info "Auto-regeneration:", "enabled for '#{options["source"]}'" - - unless options['serving'] - trap("INT") do - listener.stop - puts " Halting auto-regeneration." - exit 0 - end - - loop { sleep 1000 } - end - rescue ThreadError - # You pressed Ctrl-C, oh my! - end - - Jekyll::Commands::Serve.process(options) -end +require "bundler/gem_tasks" +require "jekyll" +require "listen" + +def listen_ignore_paths(base, options) + [ + /_config\.ya?ml/, + /_site/, + /\.jekyll-metadata/ + ] +end + +def listen_handler(base, options) + site = Jekyll::Site.new(options) + Jekyll::Command.process_site(site) + proc do |modified, added, removed| + t = Time.now + c = modified + added + removed + n = c.length + relative_paths = c.map{ |p| Pathname.new(p).relative_path_from(base).to_s } + print Jekyll.logger.message("Regenerating:", "#{relative_paths.join(", ")} changed... ") + begin + Jekyll::Command.process_site(site) + puts "regenerated in #{Time.now - t} seconds." + rescue => e + puts "error:" + Jekyll.logger.warn "Error:", e.message + Jekyll.logger.warn "Error:", "Run jekyll build --trace for more information." + end + end +end + +task :preview do + base = Pathname.new('.').expand_path + options = { + "source" => base.join('test').to_s, + "destination" => base.join('test/_site').to_s, + "force_polling" => false, + "serving" => true, + "theme" => "minimal-mistakes-jekyll" + } + + options = Jekyll.configuration(options) + + ENV["LISTEN_GEM_DEBUGGING"] = "1" + listener = Listen.to( + base.join("_data"), + base.join("_includes"), + base.join("assets"), + options["source"], + :ignore => listen_ignore_paths(base, options), + :force_polling => options['force_polling'], + &(listen_handler(base, options)) + ) + + begin + listener.start + Jekyll.logger.info "Auto-regeneration:", "enabled for '#{options["source"]}'" + + unless options['serving'] + trap("INT") do + listener.stop + puts " Halting auto-regeneration." + exit 0 + end + + loop { sleep 1000 } + end + rescue ThreadError + # You pressed Ctrl-C, oh my! + end + + Jekyll::Commands::Serve.process(options) +end diff --git a/_config.yml b/_config.yml index e3bd234a..6327132a 100644 --- a/_config.yml +++ b/_config.yml @@ -1,271 +1,271 @@ -# Welcome to Jekyll! -# -# This config file is meant for settings that affect your entire site, values -# which you are expected to set up once and rarely need to edit after that. -# For technical reasons, this file is *NOT* reloaded automatically when you use -# `jekyll serve`. If you change this file, please restart the server process. - -# Site Settings -locale : "en" -title : "Robotics Knowledgebase" -title_separator : "-" -remote_theme : "mmistakes/minimal-mistakes@4.19.1" -name : #"Your Name" -description : "The Wiki for Robot Builders." -url : https://roboticsknowledgebase.com # the base hostname & protocol for your site e.g. "https://mmistakes.github.io" -baseurl : # the subpath of your site, e.g. "/blog" -repository : "roboticsknowledgebase/roboticsknowledgebase.github.io" # GitHub username/repo-name e.g. "mmistakes/minimal-mistakes" -teaser : # path of fallback teaser image, e.g. "/assets/images/500x300.png" -breadcrumbs : false #false (default) -words_per_minute : 200 -comments: - provider : # false (default), "disqus", "discourse", "facebook", "google-plus", "staticman", "custom" - disqus: - shortname : # https://help.disqus.com/customer/portal/articles/466208-what-s-a-shortname- - discourse: - server : # https://meta.discourse.org/t/embedding-discourse-comments-via-javascript/31963 , e.g.: meta.discourse.org - facebook: - # https://developers.facebook.com/docs/plugins/comments - appid : - num_posts : # 5 (default) - colorscheme : # "light" (default), "dark" -staticman: - allowedFields : ['name', 'email', 'url', 'message'] - branch : "master" - commitMessage : "New comment." - filename : comment-{@timestamp} - format : "yml" - moderation : true - path : "docs/_data/comments/{options.slug}" # "/_data/comments/{options.slug}" (default) - requiredFields : ['name', 'email', 'message'] - transforms: - email : "md5" - generatedFields: - date: - type : "date" - options: - format : "iso8601" # "iso8601" (default), "timestamp-seconds", "timestamp-milliseconds" -atom_feed: - path : # blank (default) uses feed.xml - -# SEO Related -google_site_verification : -bing_site_verification : -alexa_site_verification : -yandex_site_verification : - -# Social Sharing -twitter: - username : -facebook: - username : - app_id : - publisher : -og_image : # Open Graph/Twitter default site image -# For specifying social profiles -# - https://developers.google.com/structured-data/customize/social-profiles -social: - type : # Person or Organization (defaults to Person) - name : # If the user or organization name differs from the site's name - links: # An array of links to social media profiles - -# Analytics -analytics: - provider : "google" # false (default), "google", "google-universal", "custom" - google: - tracking_id : "UA-105569574-1" - - -# Site Author -author: - name : #"Your Name" - avatar : # path of avatar image, e.g. "/assets/images/bio-photo.jpg" - bio : #"I am an amazing person." - location : #"Somewhere" - email : - uri : - bitbucket : - codepen : - dribbble : - flickr : - facebook : - foursquare : - github : - gitlab : - google_plus : - keybase : - instagram : - lastfm : - linkedin : - pinterest : - soundcloud : - stackoverflow : # "123456/username" (the last part of your profile url, e.g. http://stackoverflow.com/users/123456/username) - steam : - tumblr : - twitter : - vine : - weibo : - xing : - youtube : # "https://youtube.com/c/MichaelRoseDesign" - - -# Reading Files -include: - - .htaccess - - _pages - - /docs -exclude: - - "*.sublime-project" - - "*.sublime-workspace" - - vendor - - .asset-cache - - .bundle - - .jekyll-assets-cache - - .sass-cache - - assets/js/plugins - - assets/js/_main.js - - assets/js/vendor - - Capfile - - CHANGELOG - - config - - Gemfile - - Gruntfile.js - - gulpfile.js - - LICENSE - - log - - node_modules - - package.json - - Rakefile - - README - - tmp - - /test # ignore page /test -keep_files: - - .git - - .svn -encoding: "utf-8" -markdown_ext: "markdown,mkdown,mkdn,mkd,md" - - -# Conversion -markdown: kramdown -math: true -highlighter: rouge -lsi: false -excerpt_separator: "\n\n" -incremental: false - - -# Markdown Processing -kramdown: - input: GFM - hard_wrap: false - auto_ids: true - footnote_nr: 1 - entity_output: as_char - toc_levels: 1..6 - smart_quotes: lsquo,rsquo,ldquo,rdquo - enable_coderay: false - parse_block_html: true - syntax_highlighter_opts: - disable: true - - -# Search -search: true -search_full_content: true - - -# Sass/SCSS -sass: - sass_dir: _sass - style: compressed # http://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style - - -# Outputting -permalink: /:categories/:title/ -paginate: 5 # amount of posts to show -paginate_path: /page:num/ -timezone: # http://en.wikipedia.org/wiki/List_of_tz_database_time_zones - - -# Plugins -plugins: - - jekyll-paginate - - jekyll-sitemap - - jekyll-gist - - jekyll-feed - - jemoji - - jekyll-include-cache - -# mimic GitHub Pages with --safe -whitelist: - - jekyll-paginate - - jekyll-sitemap - - jekyll-gist - - jekyll-feed - - jemoji - - -# Archives -# Type -# - GitHub Pages compatible archive pages built with Liquid ~> type: liquid (default) -# - Jekyll Archives plugin archive pages ~> type: jekyll-archives -# Path (examples) -# - Archive page should exist at path when using Liquid method or you can -# expect broken links (especially with breadcrumbs enabled) -# - /tags/my-awesome-tag/index.html ~> path: /tags/ -# - path: /categories/ -# - path: / -category_archive: - type: liquid - path: /categories/ -tag_archive: - type: liquid - path: /tags/ -# https://github.com/jekyll/jekyll-archives -# jekyll-archives: -# enabled: -# - categories -# - tags -# layouts: -# category: archive-taxonomy -# tag: archive-taxonomy -# permalinks: -# category: /categories/:name/ -# tag: /tags/:name/ - - -# HTML Compression -# - http://jch.penibelst.de/ -compress_html: - clippings: all - ignore: - envs: development - - -# Defaults -defaults: - # _posts - - scope: - path: "" - type: posts - values: - layout: single - author_profile: true - read_time: true - comments: # true - share: true - related: true - - # _pages - - scope: - path: "" - type: pages - values: - related: true - layout: single - sidebar: - nav: "wiki" - toc: true - toc_icon: "bars" - toc_sticky: true +# Welcome to Jekyll! +# +# This config file is meant for settings that affect your entire site, values +# which you are expected to set up once and rarely need to edit after that. +# For technical reasons, this file is *NOT* reloaded automatically when you use +# `jekyll serve`. If you change this file, please restart the server process. + +# Site Settings +locale : "en" +title : "Robotics Knowledgebase" +title_separator : "-" +remote_theme : "mmistakes/minimal-mistakes@4.19.1" +name : #"Your Name" +description : "The Wiki for Robot Builders." +url : https://roboticsknowledgebase.com # the base hostname & protocol for your site e.g. "https://mmistakes.github.io" +baseurl : # the subpath of your site, e.g. "/blog" +repository : "roboticsknowledgebase/roboticsknowledgebase.github.io" # GitHub username/repo-name e.g. "mmistakes/minimal-mistakes" +teaser : # path of fallback teaser image, e.g. "/assets/images/500x300.png" +breadcrumbs : false #false (default) +words_per_minute : 200 +comments: + provider : # false (default), "disqus", "discourse", "facebook", "google-plus", "staticman", "custom" + disqus: + shortname : # https://help.disqus.com/customer/portal/articles/466208-what-s-a-shortname- + discourse: + server : # https://meta.discourse.org/t/embedding-discourse-comments-via-javascript/31963 , e.g.: meta.discourse.org + facebook: + # https://developers.facebook.com/docs/plugins/comments + appid : + num_posts : # 5 (default) + colorscheme : # "light" (default), "dark" +staticman: + allowedFields : ['name', 'email', 'url', 'message'] + branch : "master" + commitMessage : "New comment." + filename : comment-{@timestamp} + format : "yml" + moderation : true + path : "docs/_data/comments/{options.slug}" # "/_data/comments/{options.slug}" (default) + requiredFields : ['name', 'email', 'message'] + transforms: + email : "md5" + generatedFields: + date: + type : "date" + options: + format : "iso8601" # "iso8601" (default), "timestamp-seconds", "timestamp-milliseconds" +atom_feed: + path : # blank (default) uses feed.xml + +# SEO Related +google_site_verification : +bing_site_verification : +alexa_site_verification : +yandex_site_verification : + +# Social Sharing +twitter: + username : +facebook: + username : + app_id : + publisher : +og_image : # Open Graph/Twitter default site image +# For specifying social profiles +# - https://developers.google.com/structured-data/customize/social-profiles +social: + type : # Person or Organization (defaults to Person) + name : # If the user or organization name differs from the site's name + links: # An array of links to social media profiles + +# Analytics +analytics: + provider : "google" # false (default), "google", "google-universal", "custom" + google: + tracking_id : "UA-105569574-1" + + +# Site Author +author: + name : #"Your Name" + avatar : # path of avatar image, e.g. "/assets/images/bio-photo.jpg" + bio : #"I am an amazing person." + location : #"Somewhere" + email : + uri : + bitbucket : + codepen : + dribbble : + flickr : + facebook : + foursquare : + github : + gitlab : + google_plus : + keybase : + instagram : + lastfm : + linkedin : + pinterest : + soundcloud : + stackoverflow : # "123456/username" (the last part of your profile url, e.g. http://stackoverflow.com/users/123456/username) + steam : + tumblr : + twitter : + vine : + weibo : + xing : + youtube : # "https://youtube.com/c/MichaelRoseDesign" + + +# Reading Files +include: + - .htaccess + - _pages + - /docs +exclude: + - "*.sublime-project" + - "*.sublime-workspace" + - vendor + - .asset-cache + - .bundle + - .jekyll-assets-cache + - .sass-cache + - assets/js/plugins + - assets/js/_main.js + - assets/js/vendor + - Capfile + - CHANGELOG + - config + - Gemfile + - Gruntfile.js + - gulpfile.js + - LICENSE + - log + - node_modules + - package.json + - Rakefile + - README + - tmp + - /test # ignore page /test +keep_files: + - .git + - .svn +encoding: "utf-8" +markdown_ext: "markdown,mkdown,mkdn,mkd,md" + + +# Conversion +markdown: kramdown +math: true +highlighter: rouge +lsi: false +excerpt_separator: "\n\n" +incremental: false + + +# Markdown Processing +kramdown: + input: GFM + hard_wrap: false + auto_ids: true + footnote_nr: 1 + entity_output: as_char + toc_levels: 1..6 + smart_quotes: lsquo,rsquo,ldquo,rdquo + enable_coderay: false + parse_block_html: true + syntax_highlighter_opts: + disable: true + + +# Search +search: true +search_full_content: true + + +# Sass/SCSS +sass: + sass_dir: _sass + style: compressed # http://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style + + +# Outputting +permalink: /:categories/:title/ +paginate: 5 # amount of posts to show +paginate_path: /page:num/ +timezone: # http://en.wikipedia.org/wiki/List_of_tz_database_time_zones + + +# Plugins +plugins: + - jekyll-paginate + - jekyll-sitemap + - jekyll-gist + - jekyll-feed + - jemoji + - jekyll-include-cache + +# mimic GitHub Pages with --safe +whitelist: + - jekyll-paginate + - jekyll-sitemap + - jekyll-gist + - jekyll-feed + - jemoji + + +# Archives +# Type +# - GitHub Pages compatible archive pages built with Liquid ~> type: liquid (default) +# - Jekyll Archives plugin archive pages ~> type: jekyll-archives +# Path (examples) +# - Archive page should exist at path when using Liquid method or you can +# expect broken links (especially with breadcrumbs enabled) +# - /tags/my-awesome-tag/index.html ~> path: /tags/ +# - path: /categories/ +# - path: / +category_archive: + type: liquid + path: /categories/ +tag_archive: + type: liquid + path: /tags/ +# https://github.com/jekyll/jekyll-archives +# jekyll-archives: +# enabled: +# - categories +# - tags +# layouts: +# category: archive-taxonomy +# tag: archive-taxonomy +# permalinks: +# category: /categories/:name/ +# tag: /tags/:name/ + + +# HTML Compression +# - http://jch.penibelst.de/ +compress_html: + clippings: all + ignore: + envs: development + + +# Defaults +defaults: + # _posts + - scope: + path: "" + type: posts + values: + layout: single + author_profile: true + read_time: true + comments: # true + share: true + related: true + + # _pages + - scope: + path: "" + type: pages + values: + related: true + layout: single + sidebar: + nav: "wiki" + toc: true + toc_icon: "bars" + toc_sticky: true diff --git a/_data/nav.html b/_data/nav.html index 2b0e8d0e..5b95295f 100644 --- a/_data/nav.html +++ b/_data/nav.html @@ -1,9 +1,9 @@ - + diff --git a/_data/navigation.yml b/_data/navigation.yml index 9cd84d0f..62a15173 100644 --- a/_data/navigation.yml +++ b/_data/navigation.yml @@ -1,465 +1,468 @@ -# Wiki links. These show up in the sidebar in the order they appear here. -wiki: - - title: Overview - children: - - title: Home - url: / - - title: About - url: /about/ - - title: Wiki Index - url: /wiki/ - - title: Contribute - url: /docs/index/ - - title: Robotics Project Guide - url: /wiki/robotics-project-guide/master-guide/ - children: - - title: Define your goals and requirements - url: /wiki/robotics-project-guide/define-your-goals-and-requirements/ - - title: Choose a robot - url: /wiki/robotics-project-guide/choose-a-robot/ - - title: Make a robot - url: /wiki/robotics-project-guide/make-a-robot/ - - title: Choose a language (or languages) - url: /wiki/robotics-project-guide/choose-a-language/ - - title: Robot communication - url: /wiki/robotics-project-guide/choose-comm/ - - title: Choose a simulator - url: /wiki/robotics-project-guide/choose-a-sim/ - - title: Test and debug your robot - url: /wiki/robotics-project-guide/test-and-debug/ - - title: Demo day! - url: /wiki/robotics-project-guide/demo-day/ - - title: System Design & Development - url: /wiki/system-design-development/ - children: - - title: System Engineering - url: /wiki/system-design-development/system-engineering/ - - title: Finite State Machines - url: /wiki/system-design-development/finite-state-machine/ - - title: Mechanical Design - url: /wiki/system-design-development/mechanical-design/ - - title: Printed Circuit Board Design - url: /wiki/system-design-development/pcb-design/ - - title: Cable Management - url: /wiki/system-design-development/cable-management/ - - title: Subsystem Interface Modeling - url: /wiki/system-design-development/subsystem-interface-modeling/ - - title: In Loop Testing - url: /wiki/system-design-development/In-Loop-Testing/ - - title: Project Management - url: /wiki/project-management/ - children: - - title: Drone Flight Permissions - url: /wiki/project-management/drone-flight-permissions/ - - title: Product Development in Complex Systems - url: /wiki/project-management/product-development-complex-systems/ - - title: Risk Management - url: /wiki/project-management/risk-management/ - - title: Jira - url: /wiki/project-management/jira/ - - title: Using Notion for Project Management - url: /wiki/project-management/using-notion-for-project-management/ - - title: Common Platforms - url: /wiki/common-platforms/ - children: - - title: DJI Breakdown for Technical Projects - url: /wiki/common-platforms/dji-drone-breakdown-for-technical-projects/ - - title: Building a Custom Drone for the DARPA Triage Challenge - url: /wiki/common-platforms/building-custom-drone-for-darpa-triage-challenge/ - - title: DJI SDK - url: /wiki/common-platforms/dji-sdk/ - - title: Unitree G1 - url: /wiki/common-platforms/unitree-g1/ - - title: Unitree Go1 - url: /wiki/common-platforms/unitree-go1/ - - title: Interfacing with the Nvidia Orin - url: /wiki/common-platforms/interfacing-with-nvidia-orin/ - - title: Pixhawk - url: /wiki/common-platforms/pixhawk/ - - title: Asctec Pelican UAV Setup Guide - url: /wiki/common-platforms/asctec-uav-setup-guide/ - - title: Husky Interfacing Procedure - url: /wiki/common-platforms/husky_interfacing_and_communication/ - - title: Universal Robots UR5e Collaborative Robotic Arm - url: /wiki/common-platforms/ur5e/ - - title: ROS Introduction - url: /wiki/common-platforms/ros/ros-intro/ - - title: ROS Arduino Interface - url: /wiki/common-platforms/ros/ros-arduino-interface/ - - title: ROS Motion Server Framework - url: /wiki/common-platforms/ros/ros-motion-server-framework/ - - title: ROS Cost Maps - url: /wiki/common-platforms/ros/ros-cost-maps/ - - title: ROS Mapping and Localization - url: /wiki/common-platforms/ros/ros-mapping-localization/ - - title: ROS Navigation - url: /wiki/common-platforms/ros/ros-navigation/ - - title: ROS Global Planner - url: /wiki/common-platforms/ros/ros-global-planner/ - - title: Running ROS On An Unsupported OS - url: /wiki/common-platforms/ros/ros-unsupported-os - - title: Making RC Vehicles Autonomous - url: /wiki/common-platforms/rccars-the-complete-guide/ - - title: Khepera 4 - url: /wiki/common-platforms/khepera4/ - - title: ROS 2 Navigation for Clearpath Husky - url: /wiki/common-platforms/ros2-navigation-for-clearpath-husky/ - - title: Hello Robot Stretch RE1 - url: /wiki/common-platforms/hello-robot - - title: Configure VS Code for ROS 2 - url: /wiki/common-platforms/configure-vscode-for-ros2/ - - title: Building ROS2 Custom Packages - url: /wiki/common-platforms/ros/ros2-custom-package/ - - title: Sensing - url: /wiki/sensing/ - children: - - title: Tracking vehicles using a static traffic camera - url: /wiki/sensing/trajectory_extraction/ - - title: Adafruit GPS - url: /wiki/sensing/adafruit-gps/ - - title: AprilTags - url: /wiki/sensing/apriltags/ - - title: Stag - url: /wiki/sensing/stag/ - - title: Camera Calibration - url: /wiki/sensing/camera-calibration/ - - title: Computer Vision Consideration - url: /wiki/sensing/computer-vision-considerations/ - - title: Delphi ESR Radar - url: /wiki/sensing/delphi-esr-radar/ - - title: Point Cloud Library, 3D Sensors and Applications - url: /wiki/sensing/pcl/ - - title: Photometric Calibration - url: /wiki/sensing/photometric-calibration/ - - title: Speech Recognition - url: /wiki/sensing/speech-recognition/ - - title: Stereo Vision in OpenCV - url: /wiki/sensing/opencv-stereo/ - - title: Camera-IMU Calibration using kalibr - url: /wiki/sensing/camera-imu-calibration/ - - title: Fiducial Markers - url: /wiki/sensing/fiducial-markers/ - - title: RTK GPS - url: /wiki/sensing/gps/ - - title: Intel Realsense - url: /wiki/sensing/realsense/ - - title: Robotic Total Station (Leica TS16) - url: /wiki/sensing/robotic-total-stations/ - - title: Thermal Cameras - url: /wiki/sensing/thermal-cameras/ - - title: Azure Block Detection - url: /wiki/sensing/azure-block-detection/ - - title: DWM1001 UltraWideband Positioning System - url: /wiki/sensing/ultrawideband-beacon-positioning/ - - title: Reducing Sensor Noise in Thermal or Visual Imaging sensors - url: /wiki/sensing/sensor-noise/ - - title: Apple Vision Pro for Robotics - url: /wiki/sensing/apple-vision-pro/ - - title: Robotics with the Microsoft Hololens2 - url: /wiki/sensing/hololens-101/ - - title: Controls & Actuation - url: /wiki/actuation/ - children: - - title: Motor Controller Feedback - url: /wiki/actuation/motor-controller-feedback/ - - title: PID Control on Arduino - url: /wiki/actuation/pid-control-arduino/ - - title: Linear Actuator Types - url: /wiki/actuation/linear-actuator-resources/ - - title: ULN2003A Motor Controller - url: /wiki/actuation/uln2003a-motor-controller/ - - title: Vedder Electronic Speed Controller - url: /wiki/actuation/vedder-electronic-speed-controller/ - - title: Pure Pursuit Controller for Skid Steering - url: /wiki/actuation/Pure-Pursuit-Controller-for-Skid-Steering-Robot/ - - title: MoveIt Motion Planning and HEBI Actuator Setup and Integration - url: /wiki/actuation/moveit-and-HEBI-integration/ - - title: Model Predictive Control Introduction and Setup - url: /wiki/actuation/model-predictive-control/ - - title: Task Prioritization Control for Advanced Manipulator Control - url: /wiki/actuation/task-prioritization-control/ - - title: Drive-by-wire Conversion for Autonomous Vehicle - url: /wiki/actuation/drive-by-wire/ - - title: Manipulators - url: /wiki/manipulators/ - children: - - title: Integrating KUKA LBR Manipulators with MoveIt2 - url: /wiki/manipulators/integrating-kuka-lbr-manipulators-with-moveit2/ - - title: Machine Learning - url: /wiki/machine-learning/ - children: - - title: Training darknet on a custom dataset - url: /wiki/machine-learning/train-darknet-on-custom-dataset/ - - title: Custom data-set for segmentation - url: /wiki/machine-learning/custom-semantic-data/ - - title: Python libraries for Reinforcement Learning - url: /wiki/machine-learning/python-libraries-for-reinforcement-learning/ - - title: Reinforcement Learning - url: /wiki/machine-learning/intro-to-rl/ - - title: Diffusion Models and Diffusion Policy - url: /wiki/machine-learning/intro-to-diffusion/ - - title: GRPO for Diffusion Policies - url: /wiki/machine-learning/grpo-diffusion-policies/ - - title: YOLO Integration with ROS and Running with CUDA GPU - url: /wiki/sensing/ros-yolo-gpu/ - - title: YOLOv5 Training and Deployment on NVIDIA Jetson Platforms - url: /wiki/machine-learning/yolov5-tensorrt/ - - title: Mediapipe - Live ML anywhere - url: /wiki/machine-learning/mediapipe-live-ml-anywhere/ - - title: NLP for robotics - url: /wiki/machine-learning/nlp-for-robotics/ - - title: Distributed Training With PyTorch Tutorial - url: /wiki/machine-learning/distributed-training-with-pytorch/ - - title: Imitation Learning With a Focus on Humanoids - url: /wiki/machine-learning/imitation-learning/ - - title: Reinforcement Learning - url: /wiki/reinforcement-learning/ - children: - - title: Key Concepts in Reinforcement Learning (RL) - url: /wiki/reinforcement-learning/key-concepts-in-rl/ - - title: Reinforcement Learning Algorithms - url: /wiki/reinforcement-learning/reinforcement-learning-algorithms/ - - title: Policy Gradient Methods - url: /wiki/reinforcement-learning/intro-to-policy-gradient-methods/ - - title: Foundation of Value-Based Reinforcement Learning - url: /wiki/reinforcement-learning/value-based-reinforcement-learning/ - - title: State Estimation - url: /wiki/state-estimation/ - children: - - title: Adaptive Monte Carlo Localization - url: /wiki/state-estimation/adaptive-monte-carlo-localization/ - - title: Sensor Fusion and Tracking - url: /wiki/state-estimation/radar-camera-sensor-fusion/ - - title: SBPL Lattice Planner - url: /wiki/state-estimation/sbpl-lattice-planner/ - - title: ORB SLAM2 Setup Guidance - url: /wiki/state-estimation/orb-slam2-setup/ - - title: Visual Servoing - url: /wiki/state-estimation/visual-servoing/ - - title: Cartographer SLAM ROS Integration - url: /wiki/state-estimation/Cartographer-ROS-Integration/ - - title: Externally Referenced State Estimation for GPS Lacking Environments - url: /wiki/state-estimation/gps-lacking-state-estimation-sensors/ - - title: Using g2o for Pose Graph Optimization in C++ - url: /wiki/state-estimation/g2o-pose-graphs/ - - title: Programming - url: /wiki/programming/ - children: - - title: Boost Library - url: /wiki/programming/boost-library/ - - title: Boost Maps and Vectors - url: /wiki/programming/boost-maps-vectors/ - - title: Cmake - url: /wiki/programming/cmake/ - - title: Eigen Library - url: /wiki/programming/eigen-library/ - - title: Git - url: /wiki/programming/git/ - - title: Programming Interviews - url: /wiki/programming/google-programming-interviews/ - - title: Multithreaded Programming - url: /wiki/programming/multithreaded-programming/ - - title: Programming Tutorials and Resources - url: /wiki/programming/tutorials-resources/ - - title: Python Construct - url: /wiki/programming/python-construct/ - - title: Building Software from Source - url: /wiki/programming/build-from-source/ - - title: ROS 2 Yasmin State Machine - url: /wiki/programming/yasmin-ros2-state-machine/ - - title: Networking - url: /wiki/networking/ - children: - - title: Bluetooth Sockets - url: /wiki/networking/bluetooth-sockets/ - - title: Xbee Pro DigiMesh 900 - url: /wiki/networking/xbee-pro-digimesh-900/ - - title: ROCON Multi-Master Framework - url: /wiki/networking/rocon-multi-master/ - - title: ROS over Multiple Machines - url: /wiki/networking/ros-distributed/ - - title: Setting up WiFi hotspot at the boot up for Linux devices - url: /wiki/networking/wifi-hotspot/ - - title: Real-Time Video Processing on Jetson with GStreamer - url: /wiki/networking/gstreamer-jetson-realtime-video/ - - title: Simulation - url: /wiki/simulation/ - children: - - title: Building a Light Weight Custom Simulator - url: /wiki/simulation/Building-a-Light-Weight-Custom-Simulator/ - - title: Design considerations for ROS architectures - url: /wiki/simulation/Design-considerations-for-ROS-architectures - - title: Spawning and Controlling Vehicles in CARLA - url: /wiki/simulation/Spawning-and-Controlling-Vehicles-in-CARLA - - title: NDT Matching with Autoware - url: /wiki/simulation/NDT-Matching-with-Autoware/ - - title: Gazebo Classic Simulation of Graspable and Breakable Objects - url: /wiki/simulation/gazebo-classic-simulation-of-graspable-and-breakable-objects - - title: NVIDIA Isaac Sim Setup and ROS2 Workflow - url: /wiki/simulation/simulation-isaacsim-setup/ - - title: Interfacing - url: /wiki/interfacing/ - children: - - title: Apple Vision Pro for Robotics Applications - url: /wiki/interfacing/apple-vision-pro-for-robotics-applications/ - - title: Myo - url: /wiki/interfacing/myo/ - - title: Blink(1) LED - url: /wiki/interfacing/blink-1-led/ - - title: micro-ROS for ROS2 on Microcontrollers - url: /wiki/interfacing/microros-for-ros2-on-microcontrollers/ - - title: ROS 1 - ROS 2 Bridge - url: /wiki/interfacing/ros1_ros2_bridge/ - - title: Low Level Buffer issue debugging - url: /wiki/interfacing/buffer-issues/ - - title: Computing - url: /wiki/computing/ - children: - - title: Amazon Web Services Quickstart - url: /wiki/computing/aws-quickstart/ - - title: Adruino - url: /wiki/computing/arduino/ - - title: Single Board Computers - url: /wiki/computing/single-board-computers/ - - title: Upgrading Ubuntu Kernels - url: /wiki/computing/upgrading-ubuntu-kernel/ - - title: Ubuntu 14.04 on Chromebook - url: /wiki/computing/ubuntu-chromebook/ - - title: Setup your GPU System for Computer Vision - url: /wiki/computing/setup-gpus-for-computer-vision/ - - title: Ubuntu Dual Boot and Troubleshooting Guide - url: /wiki/computing/troubleshooting-ubuntu-dual-boot/ - - title: Comparing Commercial Off The Shelf Embedded Platforms - url: /wiki/computing/comparing-cots-embedded-systems/ - - title: Jetson Orin AGX - url: /wiki/computing/jetson-orin-agx/ - - title: Fabrication - url: /wiki/fabrication/ - children: - - title: Fabrication Considerations for 3D printing - url: /wiki/fabrication/fabrication_considerations_for_3D_printing/ - - title: Machining & Prototyping - url: /wiki/fabrication/machining-prototyping/ - - title: Rapid Prototyping - url: /wiki/fabrication/rapid-prototyping/ - - title: Turning Process - url: /wiki/fabrication/turning-process/ - - title: Milling Process - url: /wiki/fabrication/milling-process/ - - title: Soldering - url: /wiki/fabrication/soldering/ - - title: 3D Printers - url: /wiki/fabrication/3d-printers/ - - title: MakerBot Replicator 2x - url: /wiki/fabrication/makerbot-replicator-2x/ - - title: CubePro - url: /wiki/fabrication/cube-pro/ - - title: Series A Pro Printer - url: /wiki/fabrication/series-A-pro/ - - title: Onshape Tutorial - url: /wiki/fabrication/onshape-tutorial/ - - title: Math - url: /wiki/math/ - children: - - title: Gaussian Process and Gaussian Mixture Model - url: /wiki/math/gaussian-process-gaussian-mixture-model/ - - title: Registration Techniques in Robotics - url: /wiki/math/registration-techniques/ - - title: Tools - url: /wiki/tools/ - children: - - title: Docker - url: /wiki/tools/docker/ - - title: Docker Security - url: /wiki/tools/docker-security - - title: Docker for PyTorch - url: /wiki/tools/docker-for-pytorch/ - - title: Vim - url: /wiki/tools/vim/ - - title: Altium Circuitmaker - url: /wiki/tools/altium-circuitmaker/ - - title: SolidWorks - url: /wiki/tools/solidworks/ - - title: TMUX - url: /wiki/tools/tmux/ - - title: udev Rules - url: /wiki/tools/udev-rules/ - - title: ROS GUI - url: /wiki/tools/ros-gui/ - - title: Rosbags in Matlab - url: /wiki/tools/rosbags-matlab/ - - title: Making Field Testing Easier through Visualization and Simulation - url: /wiki/tools/visualization-simulation/ - - title: CLion IDE - url: /wiki/tools/clion/ - - title: Stream Rviz Visualizations as Images - url: /wiki/tools/stream-rviz/ - - title: Web-Based Visualization using ROS JavaScript Library - url: /wiki/tools/roslibjs/ - - title: MapViz for Map Based Visualization in ROS2 - url: /wiki/planning/mapviz/ - - title: Gazebo Simulation - url: /wiki/tools/gazebo-simulation/ - - title: Code Editors - Introduction to VS Code and Vim - url: /wiki/tools/code-editors-Introduction-to-vs-code-and-vim/ - - title: Qtcreator UI development with ROS - url: /wiki/tools/Qtcreator-ros/ - - title: ROS2 Humble Intra-Process Communication Recorder - url: /wiki/tools/ros2-humble-ipc-recorder/ - - title: Datasets - url: /wiki/datasets/ - children: - - title: Traffic Modelling Datasets - url: /wiki/datasets/traffic-modelling-datasets/ - - title: Open-Source Datasets - url: /wiki/datasets/open-source-datasets/ - - title: Planning - url: /wiki/planning/ - children: - - title: Planning Overview - url: /wiki/planning/planning-overview/ - - title: A* Planner Implementation Guide - url: /wiki/planning/astar_planning_implementation_guide/ - - title: Behavior Trees - url: /wiki/planning/behavior-tree/ - - title: Specialized Planners - url: /wiki/planning/pilz-chomp/ - - title: Coverage Planner Implementation Guide - url: /wiki/planning/coverage-planning-implementation-guide/ - - title: Resolved Rates - url: /wiki/planning/resolved-rates/ - - title: Multi Robot Planning Design - url: /wiki/planning/multi-robot-planning/ - - title: Motion Planning in frenet frame - url: /wiki/planning/frenet-frame-planning/ - - title: Move Base Flex - url: /wiki/planning/move-base-flex/ - - title: Google Linear Optimization Package (GLOP) - url: /wiki/planning/glop/ - - title: Advanced MoveIt usage for Manipulator Motion Planning - url: /wiki/planning/advanced-moveit-manipulator-planning/ -# Main links appear in the header. -main: - - title: Wiki - url: /wiki/ - - title: About - url: /about/ - - title: Contribute - url: /docs/ - -# Navigation for supporting documentation. -docs: - - title: Overview - children: - - title: Home - url: / - - title: About - url: /about/ - - title: Wiki Index - url: /wiki/ - - title: Contribute - url: /docs/index/ - - title: Contribute - children: - - title: Introduction - url: /docs/ +# Wiki links. These show up in the sidebar in the order they appear here. +wiki: + - title: Overview + children: + - title: Home + url: / + - title: About + url: /about/ + - title: Wiki Index + url: /wiki/ + - title: Contribute + url: /docs/index/ + - title: Robotics Project Guide + url: /wiki/robotics-project-guide/master-guide/ + children: + - title: Define your goals and requirements + url: /wiki/robotics-project-guide/define-your-goals-and-requirements/ + - title: Choose a robot + url: /wiki/robotics-project-guide/choose-a-robot/ + - title: Make a robot + url: /wiki/robotics-project-guide/make-a-robot/ + - title: Choose a language (or languages) + url: /wiki/robotics-project-guide/choose-a-language/ + - title: Robot communication + url: /wiki/robotics-project-guide/choose-comm/ + - title: Choose a simulator + url: /wiki/robotics-project-guide/choose-a-sim/ + - title: Test and debug your robot + url: /wiki/robotics-project-guide/test-and-debug/ + - title: Demo day! + url: /wiki/robotics-project-guide/demo-day/ + - title: System Design & Development + url: /wiki/system-design-development/ + children: + - title: System Engineering + url: /wiki/system-design-development/system-engineering/ + - title: Finite State Machines + url: /wiki/system-design-development/finite-state-machine/ + - title: Mechanical Design + url: /wiki/system-design-development/mechanical-design/ + - title: Printed Circuit Board Design + url: /wiki/system-design-development/pcb-design/ + - title: Cable Management + url: /wiki/system-design-development/cable-management/ + - title: Subsystem Interface Modeling + url: /wiki/system-design-development/subsystem-interface-modeling/ + - title: In Loop Testing + url: /wiki/system-design-development/In-Loop-Testing/ + - title: Project Management + url: /wiki/project-management/ + children: + - title: Drone Flight Permissions + url: /wiki/project-management/drone-flight-permissions/ + - title: Product Development in Complex Systems + url: /wiki/project-management/product-development-complex-systems/ + - title: Risk Management + url: /wiki/project-management/risk-management/ + - title: Jira + url: /wiki/project-management/jira/ + - title: Using Notion for Project Management + url: /wiki/project-management/using-notion-for-project-management/ + - title: Common Platforms + url: /wiki/common-platforms/ + children: + - title: DJI Breakdown for Technical Projects + url: /wiki/common-platforms/dji-drone-breakdown-for-technical-projects/ + - title: Building a Custom Drone for the DARPA Triage Challenge + url: /wiki/common-platforms/building-custom-drone-for-darpa-triage-challenge/ + - title: DJI SDK + url: /wiki/common-platforms/dji-sdk/ + - title: Unitree G1 + url: /wiki/common-platforms/unitree-g1/ + - title: Unitree Go1 + url: /wiki/common-platforms/unitree-go1/ + - title: Interfacing with the Nvidia Orin + url: /wiki/common-platforms/interfacing-with-nvidia-orin/ + - title: Pixhawk + url: /wiki/common-platforms/pixhawk/ + - title: Asctec Pelican UAV Setup Guide + url: /wiki/common-platforms/asctec-uav-setup-guide/ + - title: Husky Interfacing Procedure + url: /wiki/common-platforms/husky_interfacing_and_communication/ + - title: Universal Robots UR5e Collaborative Robotic Arm + url: /wiki/common-platforms/ur5e/ + - title: ROS Introduction + url: /wiki/common-platforms/ros/ros-intro/ + - title: ROS Arduino Interface + url: /wiki/common-platforms/ros/ros-arduino-interface/ + - title: ROS Motion Server Framework + url: /wiki/common-platforms/ros/ros-motion-server-framework/ + - title: ROS Cost Maps + url: /wiki/common-platforms/ros/ros-cost-maps/ + - title: ROS Mapping and Localization + url: /wiki/common-platforms/ros/ros-mapping-localization/ + - title: ROS Navigation + url: /wiki/common-platforms/ros/ros-navigation/ + - title: ROS Global Planner + url: /wiki/common-platforms/ros/ros-global-planner/ + - title: Running ROS On An Unsupported OS + url: /wiki/common-platforms/ros/ros-unsupported-os + - title: Making RC Vehicles Autonomous + url: /wiki/common-platforms/rccars-the-complete-guide/ + - title: Khepera 4 + url: /wiki/common-platforms/khepera4/ + - title: ROS 2 Navigation for Clearpath Husky + url: /wiki/common-platforms/ros2-navigation-for-clearpath-husky/ + - title: Hello Robot Stretch RE1 + url: /wiki/common-platforms/hello-robot + - title: Configure VS Code for ROS 2 + url: /wiki/common-platforms/configure-vscode-for-ros2/ + - title: Building ROS2 Custom Packages + url: /wiki/common-platforms/ros/ros2-custom-package/ + - title: Sensing + url: /wiki/sensing/ + children: + - title: Tracking vehicles using a static traffic camera + url: /wiki/sensing/trajectory_extraction/ + - title: Adafruit GPS + url: /wiki/sensing/adafruit-gps/ + - title: AprilTags + url: /wiki/sensing/apriltags/ + - title: Stag + url: /wiki/sensing/stag/ + - title: Camera Calibration + url: /wiki/sensing/camera-calibration/ + - title: Computer Vision Consideration + url: /wiki/sensing/computer-vision-considerations/ + - title: Delphi ESR Radar + url: /wiki/sensing/delphi-esr-radar/ + - title: Point Cloud Library, 3D Sensors and Applications + url: /wiki/sensing/pcl/ + - title: Photometric Calibration + url: /wiki/sensing/photometric-calibration/ + - title: Speech Recognition + url: /wiki/sensing/speech-recognition/ + - title: Stereo Vision in OpenCV + url: /wiki/sensing/opencv-stereo/ + - title: Camera-IMU Calibration using kalibr + url: /wiki/sensing/camera-imu-calibration/ + - title: Fiducial Markers + url: /wiki/sensing/fiducial-markers/ + - title: RTK GPS + url: /wiki/sensing/gps/ + - title: Intel Realsense + url: /wiki/sensing/realsense/ + - title: Robotic Total Station (Leica TS16) + url: /wiki/sensing/robotic-total-stations/ + - title: Thermal Cameras + url: /wiki/sensing/thermal-cameras/ + - title: Azure Block Detection + url: /wiki/sensing/azure-block-detection/ + - title: DWM1001 UltraWideband Positioning System + url: /wiki/sensing/ultrawideband-beacon-positioning/ + - title: Reducing Sensor Noise in Thermal or Visual Imaging sensors + url: /wiki/sensing/sensor-noise/ + - title: Apple Vision Pro for Robotics + url: /wiki/sensing/apple-vision-pro/ + - title: Robotics with the Microsoft Hololens2 + url: /wiki/sensing/hololens-101/ + - title: Controls & Actuation + url: /wiki/actuation/ + children: + - title: Motor Controller Feedback + url: /wiki/actuation/motor-controller-feedback/ + - title: PID Control on Arduino + url: /wiki/actuation/pid-control-arduino/ + - title: Linear Actuator Types + url: /wiki/actuation/linear-actuator-resources/ + - title: ULN2003A Motor Controller + url: /wiki/actuation/uln2003a-motor-controller/ + - title: Vedder Electronic Speed Controller + url: /wiki/actuation/vedder-electronic-speed-controller/ + - title: Pure Pursuit Controller for Skid Steering + url: /wiki/actuation/Pure-Pursuit-Controller-for-Skid-Steering-Robot/ + - title: MoveIt Motion Planning and HEBI Actuator Setup and Integration + url: /wiki/actuation/moveit-and-HEBI-integration/ + - title: Model Predictive Control Introduction and Setup + url: /wiki/actuation/model-predictive-control/ + - title: Task Prioritization Control for Advanced Manipulator Control + url: /wiki/actuation/task-prioritization-control/ + - title: Drive-by-wire Conversion for Autonomous Vehicle + url: /wiki/actuation/drive-by-wire/ + - title: Manipulators + url: /wiki/manipulators/ + children: + - title: Integrating KUKA LBR Manipulators with MoveIt2 + url: /wiki/manipulators/integrating-kuka-lbr-manipulators-with-moveit2/ + - title: Machine Learning + url: /wiki/machine-learning/ + children: + - title: Training darknet on a custom dataset + url: /wiki/machine-learning/train-darknet-on-custom-dataset/ + - title: Custom data-set for segmentation + url: /wiki/machine-learning/custom-semantic-data/ + - title: Python libraries for Reinforcement Learning + url: /wiki/machine-learning/python-libraries-for-reinforcement-learning/ + - title: Reinforcement Learning + url: /wiki/machine-learning/intro-to-rl/ + - title: Diffusion Models and Diffusion Policy + url: /wiki/machine-learning/intro-to-diffusion/ + - title: GRPO for Diffusion Policies + url: /wiki/machine-learning/grpo-diffusion-policies/ + - title: YOLO Integration with ROS and Running with CUDA GPU + url: /wiki/sensing/ros-yolo-gpu/ + - title: YOLOv5 Training and Deployment on NVIDIA Jetson Platforms + url: /wiki/machine-learning/yolov5-tensorrt/ + - title: Mediapipe - Live ML anywhere + url: /wiki/machine-learning/mediapipe-live-ml-anywhere/ + - title: NLP for robotics + url: /wiki/machine-learning/nlp-for-robotics/ + - title: Distributed Training With PyTorch Tutorial + url: /wiki/machine-learning/distributed-training-with-pytorch/ + - title: Imitation Learning With a Focus on Humanoids + url: /wiki/machine-learning/imitation-learning/ + - title: Reinforcement Learning + url: /wiki/reinforcement-learning/ + children: + - title: Key Concepts in Reinforcement Learning (RL) + url: /wiki/reinforcement-learning/key-concepts-in-rl/ + - title: Reinforcement Learning Algorithms + url: /wiki/reinforcement-learning/reinforcement-learning-algorithms/ + - title: Policy Gradient Methods + url: /wiki/reinforcement-learning/intro-to-policy-gradient-methods/ + - title: Foundation of Value-Based Reinforcement Learning + url: /wiki/reinforcement-learning/value-based-reinforcement-learning/ + - title: State Estimation + url: /wiki/state-estimation/ + children: + - title: Adaptive Monte Carlo Localization + url: /wiki/state-estimation/adaptive-monte-carlo-localization/ + - title: Sensor Fusion and Tracking + url: /wiki/state-estimation/radar-camera-sensor-fusion/ + - title: SBPL Lattice Planner + url: /wiki/state-estimation/sbpl-lattice-planner/ + - title: ORB SLAM2 Setup Guidance + url: /wiki/state-estimation/orb-slam2-setup/ + - title: Visual Servoing + url: /wiki/state-estimation/visual-servoing/ + - title: Cartographer SLAM ROS Integration + url: /wiki/state-estimation/Cartographer-ROS-Integration/ + - title: Externally Referenced State Estimation for GPS Lacking Environments + url: /wiki/state-estimation/gps-lacking-state-estimation-sensors/ + - title: Using g2o for Pose Graph Optimization in C++ + url: /wiki/state-estimation/g2o-pose-graphs/ + - title: Programming + url: /wiki/programming/ + children: + - title: Boost Library + url: /wiki/programming/boost-library/ + - title: Boost Maps and Vectors + url: /wiki/programming/boost-maps-vectors/ + - title: Cmake + url: /wiki/programming/cmake/ + - title: Eigen Library + url: /wiki/programming/eigen-library/ + - title: Git + url: /wiki/programming/git/ + - title: Programming Interviews + url: /wiki/programming/google-programming-interviews/ + - title: Multithreaded Programming + url: /wiki/programming/multithreaded-programming/ + - title: Programming Tutorials and Resources + url: /wiki/programming/tutorials-resources/ + - title: Python Construct + url: /wiki/programming/python-construct/ + - title: Building Software from Source + url: /wiki/programming/build-from-source/ + - title: ROS 2 Yasmin State Machine + url: /wiki/programming/yasmin-ros2-state-machine/ + - title: Networking + url: /wiki/networking/ + children: + - title: Bluetooth Sockets + url: /wiki/networking/bluetooth-sockets/ + - title: Xbee Pro DigiMesh 900 + url: /wiki/networking/xbee-pro-digimesh-900/ + - title: ROCON Multi-Master Framework + url: /wiki/networking/rocon-multi-master/ + - title: ROS over Multiple Machines + url: /wiki/networking/ros-distributed/ + - title: Setting up WiFi hotspot at the boot up for Linux devices + url: /wiki/networking/wifi-hotspot/ + - title: Real-Time Video Processing on Jetson with GStreamer + url: /wiki/networking/gstreamer-jetson-realtime-video/ + - title: Simulation + url: /wiki/simulation/ + children: + - title: Building a Light Weight Custom Simulator + url: /wiki/simulation/Building-a-Light-Weight-Custom-Simulator/ + - title: Design considerations for ROS architectures + url: /wiki/simulation/Design-considerations-for-ROS-architectures + - title: Spawning and Controlling Vehicles in CARLA + url: /wiki/simulation/Spawning-and-Controlling-Vehicles-in-CARLA + - title: NDT Matching with Autoware + url: /wiki/simulation/NDT-Matching-with-Autoware/ + - title: Gazebo Classic Simulation of Graspable and Breakable Objects + url: /wiki/simulation/gazebo-classic-simulation-of-graspable-and-breakable-objects + - title: NVIDIA Isaac Sim Setup and ROS2 Workflow + url: /wiki/simulation/simulation-isaacsim-setup/ + - title: Creating a URDF from a CAD Model using OnShape + url: /wiki/simulation/cad-to-urdf/ + + - title: Interfacing + url: /wiki/interfacing/ + children: + - title: Apple Vision Pro for Robotics Applications + url: /wiki/interfacing/apple-vision-pro-for-robotics-applications/ + - title: Myo + url: /wiki/interfacing/myo/ + - title: Blink(1) LED + url: /wiki/interfacing/blink-1-led/ + - title: micro-ROS for ROS2 on Microcontrollers + url: /wiki/interfacing/microros-for-ros2-on-microcontrollers/ + - title: ROS 1 - ROS 2 Bridge + url: /wiki/interfacing/ros1_ros2_bridge/ + - title: Low Level Buffer issue debugging + url: /wiki/interfacing/buffer-issues/ + - title: Computing + url: /wiki/computing/ + children: + - title: Amazon Web Services Quickstart + url: /wiki/computing/aws-quickstart/ + - title: Adruino + url: /wiki/computing/arduino/ + - title: Single Board Computers + url: /wiki/computing/single-board-computers/ + - title: Upgrading Ubuntu Kernels + url: /wiki/computing/upgrading-ubuntu-kernel/ + - title: Ubuntu 14.04 on Chromebook + url: /wiki/computing/ubuntu-chromebook/ + - title: Setup your GPU System for Computer Vision + url: /wiki/computing/setup-gpus-for-computer-vision/ + - title: Ubuntu Dual Boot and Troubleshooting Guide + url: /wiki/computing/troubleshooting-ubuntu-dual-boot/ + - title: Comparing Commercial Off The Shelf Embedded Platforms + url: /wiki/computing/comparing-cots-embedded-systems/ + - title: Jetson Orin AGX + url: /wiki/computing/jetson-orin-agx/ + - title: Fabrication + url: /wiki/fabrication/ + children: + - title: Fabrication Considerations for 3D printing + url: /wiki/fabrication/fabrication_considerations_for_3D_printing/ + - title: Machining & Prototyping + url: /wiki/fabrication/machining-prototyping/ + - title: Rapid Prototyping + url: /wiki/fabrication/rapid-prototyping/ + - title: Turning Process + url: /wiki/fabrication/turning-process/ + - title: Milling Process + url: /wiki/fabrication/milling-process/ + - title: Soldering + url: /wiki/fabrication/soldering/ + - title: 3D Printers + url: /wiki/fabrication/3d-printers/ + - title: MakerBot Replicator 2x + url: /wiki/fabrication/makerbot-replicator-2x/ + - title: CubePro + url: /wiki/fabrication/cube-pro/ + - title: Series A Pro Printer + url: /wiki/fabrication/series-A-pro/ + - title: Onshape Tutorial + url: /wiki/fabrication/onshape-tutorial/ + - title: Math + url: /wiki/math/ + children: + - title: Gaussian Process and Gaussian Mixture Model + url: /wiki/math/gaussian-process-gaussian-mixture-model/ + - title: Registration Techniques in Robotics + url: /wiki/math/registration-techniques/ + - title: Tools + url: /wiki/tools/ + children: + - title: Docker + url: /wiki/tools/docker/ + - title: Docker Security + url: /wiki/tools/docker-security + - title: Docker for PyTorch + url: /wiki/tools/docker-for-pytorch/ + - title: Vim + url: /wiki/tools/vim/ + - title: Altium Circuitmaker + url: /wiki/tools/altium-circuitmaker/ + - title: SolidWorks + url: /wiki/tools/solidworks/ + - title: TMUX + url: /wiki/tools/tmux/ + - title: udev Rules + url: /wiki/tools/udev-rules/ + - title: ROS GUI + url: /wiki/tools/ros-gui/ + - title: Rosbags in Matlab + url: /wiki/tools/rosbags-matlab/ + - title: Making Field Testing Easier through Visualization and Simulation + url: /wiki/tools/visualization-simulation/ + - title: CLion IDE + url: /wiki/tools/clion/ + - title: Stream Rviz Visualizations as Images + url: /wiki/tools/stream-rviz/ + - title: Web-Based Visualization using ROS JavaScript Library + url: /wiki/tools/roslibjs/ + - title: MapViz for Map Based Visualization in ROS2 + url: /wiki/planning/mapviz/ + - title: Gazebo Simulation + url: /wiki/tools/gazebo-simulation/ + - title: Code Editors - Introduction to VS Code and Vim + url: /wiki/tools/code-editors-Introduction-to-vs-code-and-vim/ + - title: Qtcreator UI development with ROS + url: /wiki/tools/Qtcreator-ros/ + - title: ROS2 Humble Intra-Process Communication Recorder + url: /wiki/tools/ros2-humble-ipc-recorder/ + - title: Datasets + url: /wiki/datasets/ + children: + - title: Traffic Modelling Datasets + url: /wiki/datasets/traffic-modelling-datasets/ + - title: Open-Source Datasets + url: /wiki/datasets/open-source-datasets/ + - title: Planning + url: /wiki/planning/ + children: + - title: Planning Overview + url: /wiki/planning/planning-overview/ + - title: A* Planner Implementation Guide + url: /wiki/planning/astar_planning_implementation_guide/ + - title: Behavior Trees + url: /wiki/planning/behavior-tree/ + - title: Specialized Planners + url: /wiki/planning/pilz-chomp/ + - title: Coverage Planner Implementation Guide + url: /wiki/planning/coverage-planning-implementation-guide/ + - title: Resolved Rates + url: /wiki/planning/resolved-rates/ + - title: Multi Robot Planning Design + url: /wiki/planning/multi-robot-planning/ + - title: Motion Planning in frenet frame + url: /wiki/planning/frenet-frame-planning/ + - title: Move Base Flex + url: /wiki/planning/move-base-flex/ + - title: Google Linear Optimization Package (GLOP) + url: /wiki/planning/glop/ + - title: Advanced MoveIt usage for Manipulator Motion Planning + url: /wiki/planning/advanced-moveit-manipulator-planning/ +# Main links appear in the header. +main: + - title: Wiki + url: /wiki/ + - title: About + url: /about/ + - title: Contribute + url: /docs/ + +# Navigation for supporting documentation. +docs: + - title: Overview + children: + - title: Home + url: / + - title: About + url: /about/ + - title: Wiki Index + url: /wiki/ + - title: Contribute + url: /docs/index/ + - title: Contribute + children: + - title: Introduction + url: /docs/ diff --git a/_data/ui-text.yml b/_data/ui-text.yml index d7be92fa..208cdb20 100644 --- a/_data/ui-text.yml +++ b/_data/ui-text.yml @@ -1,845 +1,845 @@ -# User interface text and labels - -# English (default) -# ----------------- -en: &DEFAULT_EN - page : "Page" - pagination_previous : "Previous" - pagination_next : "Next" - breadcrumb_home_label : "Home" - breadcrumb_separator : "/" - menu_label : "Toggle Menu" - toc_label : "On This Page" - ext_link_label : "Direct Link" - less_than : "less than" - minute_read : "minute read" - share_on_label : "Share on" - meta_label : - tags_label : "Tags:" - categories_label : "Categories:" - date_label : "Updated:" - comments_label : "Leave a Comment" - comments_title : "Comments" - more_label : "Learn More" - related_label : "You May Also Enjoy" - follow_label : "Follow:" - feed_label : "Feed" - powered_by : "Powered by" - website_label : "Website" - email_label : "Email" - recent_posts : "Recent Posts" - undefined_wpm : "Undefined parameter words_per_minute at _config.yml" - comment_form_info : "Your email address will not be published. Required fields are marked" - comment_form_comment_label : "Comment" - comment_form_md_info : "Markdown is supported." - comment_form_name_label : "Name" - comment_form_email_label : "Email address" - comment_form_website_label : "Website (optional)" - comment_btn_submit : "Submit Comment" - comment_btn_submitted : "Submitted" - comment_success_msg : "Thanks for your comment! It will show on the site once it has been approved." - comment_error_msg : "Sorry, there was an error with your submission. Please make sure all required fields have been completed and try again." - loading_label : "Loading..." -en-US: - <<: *DEFAULT_EN -en-CA: - <<: *DEFAULT_EN -en-GB: - <<: *DEFAULT_EN -en-AU: - <<: *DEFAULT_EN - -# Spanish -# -------------- -es: &DEFAULT_ES - page : "Página" - pagination_previous : "Anterior" - pagination_next : "Siguiente" - breadcrumb_home_label : "Inicio" - breadcrumb_separator : "/" - menu_label : - toc_label : "Contenidos" - ext_link_label : "Enlace" - less_than : "menos de" - minute_read : "minuto de lectura" - share_on_label : "Compartir" - meta_label : - tags_label : "Etiquetas:" - categories_label : "Categorías:" - date_label : "Actualizado:" - comments_label : "Comentar" - comments_title : - more_label : "Ver más" - related_label : "Podrías ver también" - follow_label : "Seguir:" - feed_label : "Feed" - powered_by : "Powered by" - website_label : "Sitio web" - email_label : "Email" - recent_posts : "Entradas recientes" - undefined_wpm : "Parametro words_per_minute (Palabras por minuto) no definido en _config.yml" - comment_form_info : "Su dirección de correo no será publicada. Se han resaltado los campos requeridos" - comment_form_comment_label : "Comentario" - comment_form_md_info : "Markdown está soportado." - comment_form_name_label : "Nombre" - comment_form_email_label : "Dirección de E-mail" - comment_form_website_label : "Sitio web (opcional)" - comment_btn_submit : "Enviar Commentario" - comment_btn_submitted : "Enviado" - comment_success_msg : "Gracias por su comentario!, Este se visualizará en el sitio una vez haya sido aprobado" - comment_error_msg : "Lo sentimos, ha ocurrido un error al enviar su comentario. Por favor asegurese que todos los campos han sido diligenciados e intente de nuevo" - loading_label : "Cargando..." -es-ES: - <<: *DEFAULT_ES -es-CO: - <<: *DEFAULT_ES - -# French -# ----------------- -fr: &DEFAULT_FR - page : "Page" - pagination_previous : "Précédent" - pagination_next : "Suivant" - breadcrumb_home_label : "Accueil" - breadcrumb_separator : "/" - menu_label : - toc_label : "Sur cette page" - ext_link_label : "Lien direct" - less_than : "moins de" - minute_read : "minute de lecture" - share_on_label : "Partager sur" - meta_label : - tags_label : "Tags :" - categories_label : "Catégories :" - date_label : "Mis à jour :" - comments_label : "Laisser un commentaire" - comments_title : - more_label : "Lire plus" - related_label : "Vous pourriez aimer aussi" - follow_label : "Contact" - feed_label : "Flux" - powered_by : "Propulsé par" - website_label : "Site" - email_label : "Email" - recent_posts : "Posts récents" - undefined_wpm : "Le paramètre words_per_minute n'est pas défini dans _config.yml" - comments_title : "Commentaires" - comment_form_info : "Votre adresse email ne sera pas visible. Les champs obligatoires sont marqués" - comment_form_comment_label : "Commentaire" - comment_form_md_info : "Markdown est supporté." - comment_form_name_label : "Nom" - comment_form_email_label : "Adresse mail" - comment_form_website_label : "Site web (optionnel)" - comment_btn_submit : "Envoyer" - comment_btn_submitted : "Envoyé" - comment_success_msg : "Merci pour votre commentaire, il sera visible sur le site une fois approuvé." - comment_error_msg : "Désolé, une erreur est survenue lors de la soumission. Vérifiez que les champs obligatoires ont été remplis et réessayez." - loading_label : "Chargement..." -fr-FR: - <<: *DEFAULT_FR -fr-BE: - <<: *DEFAULT_FR -fr-CH: - <<: *DEFAULT_FR - -# Turkish -# ----------------- -tr: &DEFAULT_TR - page : "Sayfa" - pagination_previous : "Önceki" - pagination_next : "Sonraki" - breadcrumb_home_label : "Ana Sayfa" - breadcrumb_separator : "/" - menu_label : - toc_label : "İçindekiler" - ext_link_label : "Doğrudan Bağlantı" - less_than : "Şu süreden az: " - minute_read : "dakika tahmini okuma süresi" - share_on_label : "Paylaş" - meta_label : - tags_label : "Etiketler:" - categories_label : "Kategoriler:" - date_label : "Güncelleme tarihi:" - comments_label : "Yorum yapın" - comments_title : "Yorumlar" - more_label : "Daha fazlasını öğrenin" - related_label : "Bunlar ilginizi çekebilir:" - follow_label : "Takip et:" - feed_label : "RSS" - powered_by : "Emeği geçenler: " - website_label : "Web sayfası" - email_label : "E-posta" - recent_posts : "Son yazılar" - undefined_wpm : "_config.yml dosyasında tanımlanmamış words_per_minute parametresi" - comment_form_info : "Email adresiniz gösterilmeyecektir. Zorunlu alanlar işaretlenmiştir" - comment_form_comment_label : "Yorumunuz" - comment_form_md_info : "Markdown desteklenmektedir." - comment_form_name_label : "Adınız" - comment_form_email_label : "Email adresiniz" - comment_form_website_label : "Websiteniz (opsiyonel)" - comment_btn_submit : "Yorum Yap" - comment_btn_submitted : "Gönderildi" - comment_success_msg : "Yorumunuz için teşekkürler! Yorumunuz onaylandıktan sonra sitede gösterilecektir." - comment_error_msg : "Maalesef bir hata oluştu. Lütfen zorunlu olan tüm alanları doldurduğunuzdan emin olun ve sonrasında tekrar deneyin." - loading_label : "Yükleniyor..." -tr-TR: - <<: *DEFAULT_TR - -# Portuguese -# ----------------- -pt: &DEFAULT_PT - page : "Página" - pagination_previous : "Anterior" - pagination_next : "Seguinte" - breadcrumb_home_label : "Início" - breadcrumb_separator : "/" - menu_label : - toc_label : "Nesta Página" - ext_link_label : "Link Direto" - less_than : "menos de" - minute_read : "minutos de leitura" - share_on_label : "Partilhar no" - meta_label : - tags_label : "Etiquetas:" - categories_label : "Categorias:" - date_label : "Atualizado:" - comments_label : "Deixe um Comentário" - comments_title : "Comentários" - more_label : "Saber mais" - related_label : "Também pode gostar de" - follow_label : "Siga:" - feed_label : "Feed" - powered_by : "Feito com" - website_label : "Site" - email_label : "Email" - recent_posts : "Artigos Recentes" - undefined_wpm : "Parâmetro words_per_minute não definido em _config.yml" - comment_form_info : "O seu endereço email não será publicado. Os campos obrigatórios estão assinalados" - comment_form_comment_label : "Comentário" - comment_form_md_info : "Markdown é suportado." - comment_form_name_label : "Nome" - comment_form_email_label : "Endereço Email" - comment_form_website_label : "Site (opcional)" - comment_btn_submit : "Sumbeter Comentário" - comment_btn_submitted : "Submetido" - comment_success_msg : "Obrigado pelo seu comentário! Será visível no site logo que aprovado." - comment_error_msg : "Lamento, ocorreu um erro na sua submissão. Por favor verifique se todos os campos obrigatórios estão corretamente preenchidos e tente novamente." - loading_label : "A carregar..." -# Brazilian Portuguese -pt-BR: - page : "Página" - pagination_previous : "Anterior" - pagination_next : "Próxima" - breadcrumb_home_label : "Home" - breadcrumb_separator : "/" - menu_label : - toc_label : "Nesta página" - ext_link_label : "Link direto" - less_than : "meno que" - minute_read : "minutos de leitura" - share_on_label : "Compartilhe em" - meta_label : - tags_label : "Tags:" - categories_label : "Categorias:" - date_label : "Atualizado em:" - comments_label : "Deixe um comentário" - comments_title : - more_label : "Aprenda Mais" - related_label : "Você Talvez Goste Também" - follow_label : "Acompanhe em" - feed_label : "Feed" - powered_by : "Feito com" - website_label : "Site" - email_label : "Email" - recent_posts : "Postagens recentes" - undefined_wpm : "Parâmetro indefinido em word_per_minute no _config.yml" - comment_form_info : - comment_form_comment_label : - comment_form_md_info : - comment_form_name_label : - comment_form_email_label : - comment_form_website_label : - comment_btn_submit : - comment_btn_submitted : - comment_success_msg : - comment_error_msg : - loading_label : -pt-PT: - <<: *DEFAULT_PT - -# Italian -# ----------------- -it: &DEFAULT_IT - page : "Pagina" - pagination_previous : "Precedente" - pagination_next : "Prossima" - breadcrumb_home_label : "Home" - breadcrumb_separator : "/" - menu_label : - toc_label : "Indice della pagina" - ext_link_label : "Link" - less_than : "meno di" - minute_read : "minuto/i di lettura" - share_on_label : "Condividi" - meta_label : - tags_label : "Tags:" - categories_label : "Categorie:" - date_label : "Aggiornato:" - comments_label : "Scrivi un commento" - comments_title : - more_label : "Scopri di più" - related_label : "Potrebbe Piacerti Anche" - follow_label : "Segui:" - feed_label : "Feed" - powered_by : "Powered by" - website_label : "Website" - email_label : "Email" - recent_posts : "Articoli Recenti" - undefined_wpm : "Parametro words_per_minute non definito in _config.yml" - comment_form_info : "Il tuo indirizzo email non sarà pubblicato. Sono segnati i campi obbligatori" - comment_form_comment_label : "Commenta" - comment_form_md_info : "Il linguaggio Markdown è supportato" - comment_form_name_label : "Nome" - comment_form_email_label : "Indirizzo email" - comment_form_website_label : "Sito Web (opzionale)" - comment_btn_submit : "Invia commento" - comment_btn_submitted : "Inviato" - comment_success_msg : "Grazie per il tuo commento! Verrà visualizzato nel sito una volta che sarà approvato." - comment_error_msg : "C'è stato un errore con il tuo invio. Assicurati che tutti i campi richiesti siano stati completati e riprova." - loading_label : "Caricamento..." -it-IT: - <<: *DEFAULT_IT - -# Chinese (zh-CN Chinese - China) -# ----------------- -zh: &DEFAULT_ZH - page : "页面" - pagination_previous : "向前" - pagination_next : "向后" - breadcrumb_home_label : "首页" - breadcrumb_separator : "/" - menu_label : "切换菜单" - toc_label : "在本页上" - ext_link_label : "直接链接" - less_than : "少于" - minute_read : "分钟 阅读" - share_on_label : "分享" - meta_label : - tags_label : "标签:" - categories_label : "分类:" - date_label : "最新的:" - comments_label : "留下评论" - comments_title : "评论" - more_label : "了解更多" - related_label : "猜您还喜欢" - follow_label : "关注:" - feed_label : "Feed" - powered_by : "技术来自于" - website_label : "网站" - email_label : "电子邮箱" - recent_posts : "最新文章" - undefined_wpm : "_config.yml配置中words_per_minute字段未定义" - comment_form_info : "您的电子邮箱地址并不会被展示。请填写标记为必须的字段。" - comment_form_comment_label : "评论" - comment_form_md_info : "Markdown语法已支持。" - comment_form_name_label : "姓名" - comment_form_email_label : "电子邮箱" - comment_form_website_label : "网站(可选)" - comment_btn_submit : "提交评论" - comment_btn_submitted : "已提交" - comment_success_msg : "感谢您的评论!被批准后它会立即在此站点展示。" - comment_error_msg : "很抱歉,您的提交存在错误。请确保所有必填字段都已填写正确,然后再试一次。" - loading_label : "正在加载..." -zh-CN: - <<: *DEFAULT_ZH -zh-HK: - <<: *DEFAULT_ZH -zh-SG: - <<: *DEFAULT_ZH -# Taiwan (Traditional Chinese) -zh-TW: - page : "頁面" - pagination_previous : "較舊" - pagination_next : "較新" - breadcrumb_home_label : "首頁" - breadcrumb_separator : "/" - menu_label : "切換選單" - toc_label : "本頁" - ext_link_label : "外部連結" - less_than : "少於" - minute_read : "分鐘閱讀" - share_on_label : "分享到" - meta_label : - tags_label : "標籤:" - categories_label : "分類:" - date_label : "更新時間:" - comments_label : "留言" - comments_title : "留言內容" - more_label : "了解更多" - related_label : "猜您有與趣" - follow_label : "追蹤:" - feed_label : "RSS Feed" - powered_by : "Powered by" - website_label : "網站" - email_label : "電子信箱" - recent_posts : "最新文章" - undefined_wpm : "_config.yml 中未定義 words_per_minute" - comment_form_info : "您的電子信箱不會被公開. 必填部份已標記" - comment_form_comment_label : "留言內容" - comment_form_md_info : "支援Markdown語法。" - comment_form_name_label : "名字" - comment_form_email_label : "電子信箱帳號" - comment_form_website_label : "網頁 (可選填)" - comment_btn_submit : "送出留言" - comment_btn_submitted : "已送出" - comment_success_msg : "感謝您的留言! 審核後將會顯示在站上。" - comment_error_msg : "抱歉,部份資料輸入有問題。請確認資料填寫正確後再試一次。" - loading_label : "載入中..." - -# German / Deutsch -# ----------------- -de: &DEFAULT_DE - page : "Seite" - pagination_previous : "Vorherige" - pagination_next : "Nächste" - breadcrumb_home_label : "Home" - breadcrumb_separator : "/" - menu_label : - toc_label : "Auf dieser Seite" - ext_link_label : "Direkter Link" - less_than : "weniger als" - minute_read : "Minuten zum lesen" - share_on_label : "Teilen auf" - meta_label : - tags_label : "Tags:" - categories_label : "Kategorien:" - date_label : "Aktualisiert:" - comments_label : "Hinterlassen sie einen Kommentar" - comments_title : "Kommentare" - more_label : "Mehr anzeigen" - related_label : "Ihnen gefällt vielleicht auch" - follow_label : "Folgen:" - feed_label : "Feed" - powered_by : "Powered by" - website_label : "Webseite" - email_label : "E-Mail" - recent_posts : "Aktuelle Beiträge" - undefined_wpm : "Undefinierter Parameter words_per_minute in _config.yml" - comment_form_info : "Ihre E-Mail Adresse wird nicht veröffentlicht. Benötigte Felder sind markiert" - comment_form_comment_label : "Kommentar" - comment_form_md_info : "Markdown wird unterstützt." - comment_form_name_label : "Name" - comment_form_email_label : "E-Mail Addresse" - comment_form_website_label : "Webseite (optional)" - comment_btn_submit : "Kommentar absenden" - comment_btn_submitted : "Versendet" - comment_success_msg : "Danke für ihren Kommentar! Er wird auf der Seite angezeigt, nachdem er geprüft wurde." - comment_error_msg : "Entschuldigung, es gab einen Fehler. Bitte füllen sie alle benötigten Felder aus und versuchen sie es erneut." - loading_label : "Lade..." -de-DE: - <<: *DEFAULT_DE -de-AT: - <<: *DEFAULT_DE -de-CH: - <<: *DEFAULT_DE -de-BE: - <<: *DEFAULT_DE -de-LI: - <<: *DEFAULT_DE -de-LU: - <<: *DEFAULT_DE - -# Nepali (Nepal) -# ----------------- -ne: &DEFAULT_NE - page : "पृष्‍ठ" - pagination_previous : "अघिल्लो" - pagination_next : "अर्को" - breadcrumb_home_label : "गृह" - breadcrumb_separator : "/" - menu_label : "टगल मेनु" - toc_label : "यो पृष्‍ठमा" - ext_link_label : "सिधा सम्पर्क" - less_than : "कम्तिमा" - minute_read : "मिनेट पढ्नुहोस्" - share_on_label : "शेयर गर्नुहोस्" - meta_label : - tags_label : "ट्यागहरू:" - categories_label : "वर्गहरु:" - date_label : "अद्यावधिक:" - comments_label : "टिप्पणी दिनुहोस्" - comments_title : "टिप्पणीहरू" - more_label : "अझै सिक्नुहोस्" - related_label : "तपाईं रुचाउन सक्नुहुन्छ " - follow_label : "पछ्याउनुहोस्:" - feed_label : "फिड" - powered_by : "Powered by" - website_label : "वेबसाइट" - email_label : "इमेल" - recent_posts : "ताजा लेखहरु" - undefined_wpm : "अपरिभाषित प्यारामिटर शब्दहरू_प्रति_मिनेट at _config.yml" - comment_form_info : "तपाइँको इमेल ठेगाना प्रकाशित गरिने छैन।आवश्यक जानकारीहरुमा चिन्ह लगाइको छ" - comment_form_comment_label : "टिप्पणी" - comment_form_md_info : "मार्कडाउन समर्थित छ।" - comment_form_name_label : "नाम" - comment_form_email_label : "इमेल ठेगाना" - comment_form_website_label : "वेबसाइट (वैकल्पिक)" - comment_btn_submit : "टिप्पणी दिनुहोस् " - comment_btn_submitted : "टिप्पणी भयो" - comment_success_msg : "तपाईंको टिप्पणीको लागि धन्यवाद! एक पटक यो अनुमोदन गरेपछी यो साइटमा देखाउनेछ।" - comment_error_msg : "माफ गर्नुहोस्, तपाईंको टिप्पणी त्रुटि थियो।सबै आवश्यक जानकारीहरु पूरा गरिएको छ भने निश्चित गर्नुहोस् र फेरि प्रयास गर्नुहोस्।" - loading_label : "लोड हुँदैछ ..." -ne-NP: - <<: *DEFAULT_NE - -# Korean -# -------------- -ko: &DEFAULT_KO - page : "페이지" - pagination_previous : "이전" - pagination_next : "다음" - breadcrumb_home_label : "Home" - breadcrumb_separator : "/" - menu_label : "토글 메뉴" - toc_label : "On This Page" - ext_link_label : "직접 링크" - less_than : "최대" - minute_read : "분 소요" - share_on_label : "공유하기" - meta_label : - tags_label : "태그:" - categories_label : "카테고리:" - date_label : "업데이트:" - comments_label : "댓글남기기" - comments_title : "댓글" - more_label : "더 보기" - related_label : "참고" - follow_label : "팔로우:" - feed_label : "피드" - powered_by : "Powered by" - website_label : "웹사이트" - email_label : "이메일" - recent_posts : "최근 포스트" - undefined_wpm : "Undefined parameter words_per_minute at _config.yml" - comment_form_info : "이메일은 공개되지 않습니다. 작성 필요 필드:" - comment_form_comment_label : "댓글" - comment_form_md_info : "마크다운을 지원합니다." - comment_form_name_label : "이름" - comment_form_email_label : "이메일" - comment_form_website_label : "웹사이트(선택사항)" - comment_btn_submit : "댓글 등록" - comment_btn_submitted : "등록됨" - comment_success_msg : "감사합니다! 댓글이 머지된 후 확인하실 수 있습니다." - comment_error_msg : "댓글 등록에 문제가 있습니다. 필요 필드를 작성했는지 확인하고 다시 시도하세요." - loading_label : "로딩중..." -ko-KR: - <<: *DEFAULT_KO - -# Russian / Русский -# ----------------- -ru: &DEFAULT_RU - page : "Страница" - pagination_previous : "Предыдущая" - pagination_next : "Следующая" - breadcrumb_home_label : "Главная" - breadcrumb_separator : "/" - menu_label : "Выпадающее меню" - toc_label : "Содержание" - ext_link_label : "Прямая ссылка" - less_than : "менее" - minute_read : "мин на чтение" - share_on_label : "Поделиться" - meta_label : - tags_label : "Метки:" - categories_label : "Разделы:" - date_label : "Дата изменения:" - comments_label : "Оставить комментарий" - comments_title : "Комментарии" - more_label : "Читать далее" - related_label : "Вам также может понравиться" - follow_label : "Связаться со мной:" - feed_label : "RSS-лента" - powered_by : "Сайт работает на" - website_label : "Сайт" - email_label : "Электронная почта" - recent_posts : "Свежие записи" - undefined_wpm : "Не определён параметр words_per_minute в _config.yml" - comment_form_info : "Ваш адрес электронной почты не будет опубликован. Обязательные поля помечены" - comment_form_comment_label : "Комментарий" - comment_form_md_info : "Поддерживается синтаксис Markdown." - comment_form_name_label : "Имя" - comment_form_email_label : "Электронная почта" - comment_form_website_label : "Ссылка на сайт (необязательно)" - comment_btn_submit : "Оставить комментарий" - comment_btn_submitted : "Отправлено" - comment_success_msg : "Спасибо за Ваш комментарий! Он будет опубликован на сайте после проверки." - comment_error_msg : "К сожалению, произошла ошибка с отправкой комментария. Пожалуйста, убедитесь, что все обязательные поля заполнены и попытайтесь снова." - loading_label : "Отправка..." -ru-RU: - <<: *DEFAULT_RU - -# Lithuanian / Lietuviškai -# ----------------- -lt: &DEFAULT_LT - page : "Puslapis" - pagination_previous : "Ankstesnis" - pagination_next : "Sekantis" - breadcrumb_home_label : "Pagrindinis" - breadcrumb_separator : "/" - menu_label : "Meniu rodymas" - toc_label : "Turinys" - ext_link_label : "Tiesioginė nuoroda" - less_than : "mažiau nei" - minute_read : "min. skaitymo" - share_on_label : "Pasidalinti" - meta_label : - tags_label : "Žymės:" - categories_label : "Kategorijos:" - date_label : "Atnaujinta:" - comments_label : "Palikti komentarą" - comments_title : "Komentaras" - more_label : "Skaityti daugiau" - related_label : "Taip pat turėtų patikti" - follow_label : "Sekti:" - feed_label : "Šaltinis" - powered_by : "Sukurta su" - website_label : "Tinklapis" - email_label : "El. paštas" - recent_posts : "Naujausi įrašai" - undefined_wpm : "Nedeklaruotas parametras words_per_minute faile _config.yml" - comment_form_info : "El. pašto adresas nebus viešinamas. Būtini laukai pažymėti." - comment_form_comment_label : "Komentaras" - comment_form_md_info : "Markdown palaikomas." - comment_form_name_label : "Vardas" - comment_form_email_label : "El. paštas" - comment_form_website_label : "Tinklapis (nebūtina)" - comment_btn_submit : "Komentuoti" - comment_btn_submitted : "Įrašytas" - comment_success_msg : "Ačiū už komentarą! Jis bus parodytas kai bus patvirtintas." - comment_error_msg : "Atleiskite, įvyko netikėta klaida įrašant komentarą. Pasitikrinkite ar užpildėte visus būtinus laukus ir pamėginkite dar kartą." - loading_label : "Kraunama..." -lt-LT: - <<: *DEFAULT_LT - -# Greek -# -------------- -gr: &DEFAULT_GR - page : "Σελίδα" - pagination_previous : "Προηγούμενo" - pagination_next : "Επόμενo" - breadcrumb_home_label : "Αρχική" - breadcrumb_separator : "/" - menu_label : "Μενού" - toc_label : "Περιεχόμενα" - ext_link_label : "Εξωτερικός Σύνδεσμος" - less_than : "Λιγότερο από" - minute_read : "λεπτά ανάγνωσης" - share_on_label : "Μοιραστείτε το" - meta_label : - tags_label : "Ετικέτες:" - categories_label : "Κατηγορίες:" - date_label : "Ενημερώθηκε:" - comments_label : "Αφήστε ένα σχόλιο" - comments_title : "Σχόλια" - more_label : "Διάβαστε περισσότερα" - related_label : "Σχετικές αναρτήσεις" - follow_label : "Ακολουθήστε:" - feed_label : "RSS Feed" - powered_by : "Δημιουργήθηκε με" - website_label : "Ιστοσελίδα" - email_label : "Email" - recent_posts : "Τελευταίες αναρτήσεις" - undefined_wpm : "Δεν έχει οριστεί η παράμετρος words_per_minute στο αρχείο _config.yml" - comment_form_info : "Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα απαιτούμενα πεδία εμφανίζονται με αστερίσκο" - comment_form_comment_label : "Σχόλιο" - comment_form_md_info : "Το πεδίο υποστηρίζει Markdown." - comment_form_name_label : "Όνομα" - comment_form_email_label : "Διεύθυνση email" - comment_form_website_label : "Ιστοσελίδα (προαιρετικό)" - comment_btn_submit : "Υπόβαλε ένα σχόλιο" - comment_btn_submitted : "Έχει υποβληθεί" - comment_success_msg : "Ευχαριστούμε για το σχόλιό σας! Θα εμφανιστεί στην ιστοσελίδα αφού εγκριθεί." - comment_error_msg : "Λυπούμαστε, παρουσιάστηκε σφάλμα με την υποβολή σας. Παρακαλούμε βεβαιωθείτε ότι έχετε όλα τα απαιτούμενα πεδία συμπληρωμένα και δοκιμάστε ξανά." - loading_label : "Φόρτωση..." -gr-GR: - <<: *DEFAULT_GR - -# Swedish -# ----------------- -sv: &DEFAULT_SV - page : "Sidan" - pagination_previous : "Föregående" - pagination_next : "Nästa" - breadcrumb_home_label : "Hem" - breadcrumb_separator : "/" - menu_label : "Meny ridå" - toc_label : "På denna sida" - ext_link_label : "Direkt länk" - less_than : "mindre än" - minute_read : "minut läsning" - share_on_label : "Dela på" - meta_label : - tags_label : "Taggar:" - categories_label : "Kategorier:" - date_label : "Uppdaterades:" - comments_label : "Lämna en kommentar" - comments_title : "Kommentarer" - more_label : "Lär dig mer" - related_label : "Du kanske vill även läsa:" - follow_label : "Följ:" - feed_label : "Flöde" - powered_by : "Framställd med" - website_label : "Webbsida" - email_label : "E-post" - recent_posts : "Senaste inlägg" - undefined_wpm : "Odefinerade parametrar words_per_minute i _config.yml" - comment_form_info : "Din e-post adress kommer inte att publiceras. Obligatoriska fält är markerade." - comment_form_comment_label : "Kommentar" - comment_form_md_info : "Använd Markdown för text-formateringen." - comment_form_name_label : "Namn" - comment_form_email_label : "E-post adress" - comment_form_website_label : "Webdsida (valfritt)" - comment_btn_submit : "Skicka en kommentar" - comment_btn_submitted : "Kommentaren har tagits emot" - comment_success_msg : "Tack för din kommentar! Den kommer att visas på sidan så fort den har godkännts." - comment_error_msg : "Tyvärr det har blivit något fel i en av fälten, se till att du fyller i alla rutor och försök igen." - loading_label : "Laddar..." -sv-SE: - <<: *DEFAULT_SV -sv-FI: - <<: *DEFAULT_SV - -# Dutch -# ----------------- -nl: &DEFAULT_NL - page : "Pagina" - pagination_previous : "Vorige" - pagination_next : "Volgende" - breadcrumb_home_label : "Home" - breadcrumb_separator : "/" - menu_label : "Wissel Menu" - toc_label : "Op deze pagina" - ext_link_label : "Directe Link" - less_than : "minder dan" - minute_read : "minuut gelezen" - share_on_label : "Deel op" - meta_label : - tags_label : "Labels:" - categories_label : "Categorieën:" - date_label : "Bijgewerkt:" - comments_label : "Laat een reactie achter" - comments_title : "Commentaren" - more_label : "Meer informatie" - related_label : "Bekijk ook eens" - follow_label : "Volg:" - feed_label : "Feed" - powered_by : "Aangedreven door" - website_label : "Website" - email_label : "Email" - recent_posts : "Recente berichten" - undefined_wpm : "Niet gedefinieerde parameter words_per_minute bij _config.yml" - comment_form_info : "Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd" - comment_form_comment_label : "Commentaar" - comment_form_md_info : "Markdown wordt ondersteund." - comment_form_name_label : "Naam" - comment_form_email_label : "E-mailadres" - comment_form_website_label : "Website (optioneel)" - comment_btn_submit : "Commentaar toevoegen" - comment_btn_submitted : "Toegevoegd" - comment_success_msg : "Bedankt voor uw reactie! Het zal op de site worden weergegeven zodra het is goedgekeurd." - comment_error_msg : "Sorry, er is een fout opgetreden bij uw inzending. Zorg ervoor dat alle vereiste velden zijn voltooid en probeer het opnieuw." - loading_label : "Laden..." -nl-BE: - <<: *DEFAULT_NL -nl-NL: - <<: *DEFAULT_NL - -# Indonesian -# ----------------- -id: &DEFAULT_ID - page : "Halaman" - pagination_previous : "Kembali" - pagination_next : "Maju" - breadcrumb_home_label : "Home" - breadcrumb_separator : "/" - menu_label : "Menu Toggle" - toc_label : "Pada Halaman Ini" - ext_link_label : "Link langsung" - less_than : "Kurang dari" - minute_read : "Waktu baca" - share_on_label : "Berbagi di" - meta_label : - tags_label : "Golongan:" - categories_label : "Kategori:" - date_label : "Diupdate:" - comments_label : "Tinggalkan komentar" - comments_title : "Komentar" - more_label : "Pelajari lagi" - related_label : "Anda juga akan suka" - follow_label : "Ikuti:" - feed_label : "Feed" - powered_by : "Didukung oleh" - website_label : "Website" - email_label : "Email" - recent_posts : "Posting terbaru" - undefined_wpm : "Parameter terdeskripsi words_per_minute di _config.yml" - comment_form_info : "Email Anda tidak akan dipublish. Kolom yang diperlukan ditandai" - comment_form_comment_label : "Komentar" - comment_form_md_info : "Markdown disupport." - comment_form_name_label : "Nama" - comment_form_email_label : "Alamat email" - comment_form_website_label : "Website (opsional)" - comment_btn_submit : "Submit Komentar" - comment_btn_submitted : "Telah disubmit" - comment_success_msg : "Terimakasih atas komentar Anda! Komentar ini akan tampil setelah disetujui." - comment_error_msg : "Maaf, ada kesalahan pada submisi Anda. Pastikan seluruh kolom sudah dilengkapi dan coba kembali." - loading_label : "Sedang meload..." -id-ID: - <<: *DEFAULT_ID - -# Vietnamese -# ----------------- -vi: &DEFAULT_VI - page : "Trang" - pagination_previous : "Trước" - pagination_next : "Sau" - breadcrumb_home_label : "Trang chủ" - breadcrumb_separator : "/" - menu_label : "Menu" - toc_label : "Tại trang này" - ext_link_label : "Đường dẫn trực tiếp" - less_than : "nhỏ hơn" - minute_read : "phút đọc" - share_on_label : "Chia sẻ tại" - meta_label : - tags_label : "Nhãn:" - categories_label : "Chủ đề:" - date_label : "Cập nhật:" - comments_label : "Để lại bình luận" - comments_title : "Bình luận" - more_label : "Mở rộng" - related_label : "Có thể bạn cũng thích" - follow_label : "Theo dõi:" - feed_label : "Feed" - powered_by : "Được hỗ trợ bởi" - website_label : "Website" - email_label : "Email" - recent_posts : "Bài viết mới" - undefined_wpm : "Chưa định nghĩa thông số words_per_minute tại _config.yml" - comment_form_info : "Email của bạn sẽ được giữ bí mật. Các phần bắt buộc được đánh dấu." - comment_form_comment_label : "Bình luận" - comment_form_md_info : "Hỗ trợ Markdown." - comment_form_name_label : "Tên" - comment_form_email_label : "Địa chỉ email" - comment_form_website_label : "Website (không bắt buộc)" - comment_btn_submit : "Gửi bình luận" - comment_btn_submitted : "Đã được gửi" - comment_success_msg : "Cảm ơn bạn đã bình luận! Bình luận sẽ xuất hiện sau khi được duyệt." - comment_error_msg : "Rất tiếc, có lỗi trong việc gửi bình luận. Hãy đảm bảo toàn bộ các phần bắt buộc đã được điền đầy đủ và thử lại." - loading_label : "Đang tải..." -vi-VN: - <<: *DEFAULT_VI - -# Another locale -# -------------- -# +# User interface text and labels + +# English (default) +# ----------------- +en: &DEFAULT_EN + page : "Page" + pagination_previous : "Previous" + pagination_next : "Next" + breadcrumb_home_label : "Home" + breadcrumb_separator : "/" + menu_label : "Toggle Menu" + toc_label : "On This Page" + ext_link_label : "Direct Link" + less_than : "less than" + minute_read : "minute read" + share_on_label : "Share on" + meta_label : + tags_label : "Tags:" + categories_label : "Categories:" + date_label : "Updated:" + comments_label : "Leave a Comment" + comments_title : "Comments" + more_label : "Learn More" + related_label : "You May Also Enjoy" + follow_label : "Follow:" + feed_label : "Feed" + powered_by : "Powered by" + website_label : "Website" + email_label : "Email" + recent_posts : "Recent Posts" + undefined_wpm : "Undefined parameter words_per_minute at _config.yml" + comment_form_info : "Your email address will not be published. Required fields are marked" + comment_form_comment_label : "Comment" + comment_form_md_info : "Markdown is supported." + comment_form_name_label : "Name" + comment_form_email_label : "Email address" + comment_form_website_label : "Website (optional)" + comment_btn_submit : "Submit Comment" + comment_btn_submitted : "Submitted" + comment_success_msg : "Thanks for your comment! It will show on the site once it has been approved." + comment_error_msg : "Sorry, there was an error with your submission. Please make sure all required fields have been completed and try again." + loading_label : "Loading..." +en-US: + <<: *DEFAULT_EN +en-CA: + <<: *DEFAULT_EN +en-GB: + <<: *DEFAULT_EN +en-AU: + <<: *DEFAULT_EN + +# Spanish +# -------------- +es: &DEFAULT_ES + page : "Página" + pagination_previous : "Anterior" + pagination_next : "Siguiente" + breadcrumb_home_label : "Inicio" + breadcrumb_separator : "/" + menu_label : + toc_label : "Contenidos" + ext_link_label : "Enlace" + less_than : "menos de" + minute_read : "minuto de lectura" + share_on_label : "Compartir" + meta_label : + tags_label : "Etiquetas:" + categories_label : "Categorías:" + date_label : "Actualizado:" + comments_label : "Comentar" + comments_title : + more_label : "Ver más" + related_label : "Podrías ver también" + follow_label : "Seguir:" + feed_label : "Feed" + powered_by : "Powered by" + website_label : "Sitio web" + email_label : "Email" + recent_posts : "Entradas recientes" + undefined_wpm : "Parametro words_per_minute (Palabras por minuto) no definido en _config.yml" + comment_form_info : "Su dirección de correo no será publicada. Se han resaltado los campos requeridos" + comment_form_comment_label : "Comentario" + comment_form_md_info : "Markdown está soportado." + comment_form_name_label : "Nombre" + comment_form_email_label : "Dirección de E-mail" + comment_form_website_label : "Sitio web (opcional)" + comment_btn_submit : "Enviar Commentario" + comment_btn_submitted : "Enviado" + comment_success_msg : "Gracias por su comentario!, Este se visualizará en el sitio una vez haya sido aprobado" + comment_error_msg : "Lo sentimos, ha ocurrido un error al enviar su comentario. Por favor asegurese que todos los campos han sido diligenciados e intente de nuevo" + loading_label : "Cargando..." +es-ES: + <<: *DEFAULT_ES +es-CO: + <<: *DEFAULT_ES + +# French +# ----------------- +fr: &DEFAULT_FR + page : "Page" + pagination_previous : "Précédent" + pagination_next : "Suivant" + breadcrumb_home_label : "Accueil" + breadcrumb_separator : "/" + menu_label : + toc_label : "Sur cette page" + ext_link_label : "Lien direct" + less_than : "moins de" + minute_read : "minute de lecture" + share_on_label : "Partager sur" + meta_label : + tags_label : "Tags :" + categories_label : "Catégories :" + date_label : "Mis à jour :" + comments_label : "Laisser un commentaire" + comments_title : + more_label : "Lire plus" + related_label : "Vous pourriez aimer aussi" + follow_label : "Contact" + feed_label : "Flux" + powered_by : "Propulsé par" + website_label : "Site" + email_label : "Email" + recent_posts : "Posts récents" + undefined_wpm : "Le paramètre words_per_minute n'est pas défini dans _config.yml" + comments_title : "Commentaires" + comment_form_info : "Votre adresse email ne sera pas visible. Les champs obligatoires sont marqués" + comment_form_comment_label : "Commentaire" + comment_form_md_info : "Markdown est supporté." + comment_form_name_label : "Nom" + comment_form_email_label : "Adresse mail" + comment_form_website_label : "Site web (optionnel)" + comment_btn_submit : "Envoyer" + comment_btn_submitted : "Envoyé" + comment_success_msg : "Merci pour votre commentaire, il sera visible sur le site une fois approuvé." + comment_error_msg : "Désolé, une erreur est survenue lors de la soumission. Vérifiez que les champs obligatoires ont été remplis et réessayez." + loading_label : "Chargement..." +fr-FR: + <<: *DEFAULT_FR +fr-BE: + <<: *DEFAULT_FR +fr-CH: + <<: *DEFAULT_FR + +# Turkish +# ----------------- +tr: &DEFAULT_TR + page : "Sayfa" + pagination_previous : "Önceki" + pagination_next : "Sonraki" + breadcrumb_home_label : "Ana Sayfa" + breadcrumb_separator : "/" + menu_label : + toc_label : "İçindekiler" + ext_link_label : "Doğrudan Bağlantı" + less_than : "Şu süreden az: " + minute_read : "dakika tahmini okuma süresi" + share_on_label : "Paylaş" + meta_label : + tags_label : "Etiketler:" + categories_label : "Kategoriler:" + date_label : "Güncelleme tarihi:" + comments_label : "Yorum yapın" + comments_title : "Yorumlar" + more_label : "Daha fazlasını öğrenin" + related_label : "Bunlar ilginizi çekebilir:" + follow_label : "Takip et:" + feed_label : "RSS" + powered_by : "Emeği geçenler: " + website_label : "Web sayfası" + email_label : "E-posta" + recent_posts : "Son yazılar" + undefined_wpm : "_config.yml dosyasında tanımlanmamış words_per_minute parametresi" + comment_form_info : "Email adresiniz gösterilmeyecektir. Zorunlu alanlar işaretlenmiştir" + comment_form_comment_label : "Yorumunuz" + comment_form_md_info : "Markdown desteklenmektedir." + comment_form_name_label : "Adınız" + comment_form_email_label : "Email adresiniz" + comment_form_website_label : "Websiteniz (opsiyonel)" + comment_btn_submit : "Yorum Yap" + comment_btn_submitted : "Gönderildi" + comment_success_msg : "Yorumunuz için teşekkürler! Yorumunuz onaylandıktan sonra sitede gösterilecektir." + comment_error_msg : "Maalesef bir hata oluştu. Lütfen zorunlu olan tüm alanları doldurduğunuzdan emin olun ve sonrasında tekrar deneyin." + loading_label : "Yükleniyor..." +tr-TR: + <<: *DEFAULT_TR + +# Portuguese +# ----------------- +pt: &DEFAULT_PT + page : "Página" + pagination_previous : "Anterior" + pagination_next : "Seguinte" + breadcrumb_home_label : "Início" + breadcrumb_separator : "/" + menu_label : + toc_label : "Nesta Página" + ext_link_label : "Link Direto" + less_than : "menos de" + minute_read : "minutos de leitura" + share_on_label : "Partilhar no" + meta_label : + tags_label : "Etiquetas:" + categories_label : "Categorias:" + date_label : "Atualizado:" + comments_label : "Deixe um Comentário" + comments_title : "Comentários" + more_label : "Saber mais" + related_label : "Também pode gostar de" + follow_label : "Siga:" + feed_label : "Feed" + powered_by : "Feito com" + website_label : "Site" + email_label : "Email" + recent_posts : "Artigos Recentes" + undefined_wpm : "Parâmetro words_per_minute não definido em _config.yml" + comment_form_info : "O seu endereço email não será publicado. Os campos obrigatórios estão assinalados" + comment_form_comment_label : "Comentário" + comment_form_md_info : "Markdown é suportado." + comment_form_name_label : "Nome" + comment_form_email_label : "Endereço Email" + comment_form_website_label : "Site (opcional)" + comment_btn_submit : "Sumbeter Comentário" + comment_btn_submitted : "Submetido" + comment_success_msg : "Obrigado pelo seu comentário! Será visível no site logo que aprovado." + comment_error_msg : "Lamento, ocorreu um erro na sua submissão. Por favor verifique se todos os campos obrigatórios estão corretamente preenchidos e tente novamente." + loading_label : "A carregar..." +# Brazilian Portuguese +pt-BR: + page : "Página" + pagination_previous : "Anterior" + pagination_next : "Próxima" + breadcrumb_home_label : "Home" + breadcrumb_separator : "/" + menu_label : + toc_label : "Nesta página" + ext_link_label : "Link direto" + less_than : "meno que" + minute_read : "minutos de leitura" + share_on_label : "Compartilhe em" + meta_label : + tags_label : "Tags:" + categories_label : "Categorias:" + date_label : "Atualizado em:" + comments_label : "Deixe um comentário" + comments_title : + more_label : "Aprenda Mais" + related_label : "Você Talvez Goste Também" + follow_label : "Acompanhe em" + feed_label : "Feed" + powered_by : "Feito com" + website_label : "Site" + email_label : "Email" + recent_posts : "Postagens recentes" + undefined_wpm : "Parâmetro indefinido em word_per_minute no _config.yml" + comment_form_info : + comment_form_comment_label : + comment_form_md_info : + comment_form_name_label : + comment_form_email_label : + comment_form_website_label : + comment_btn_submit : + comment_btn_submitted : + comment_success_msg : + comment_error_msg : + loading_label : +pt-PT: + <<: *DEFAULT_PT + +# Italian +# ----------------- +it: &DEFAULT_IT + page : "Pagina" + pagination_previous : "Precedente" + pagination_next : "Prossima" + breadcrumb_home_label : "Home" + breadcrumb_separator : "/" + menu_label : + toc_label : "Indice della pagina" + ext_link_label : "Link" + less_than : "meno di" + minute_read : "minuto/i di lettura" + share_on_label : "Condividi" + meta_label : + tags_label : "Tags:" + categories_label : "Categorie:" + date_label : "Aggiornato:" + comments_label : "Scrivi un commento" + comments_title : + more_label : "Scopri di più" + related_label : "Potrebbe Piacerti Anche" + follow_label : "Segui:" + feed_label : "Feed" + powered_by : "Powered by" + website_label : "Website" + email_label : "Email" + recent_posts : "Articoli Recenti" + undefined_wpm : "Parametro words_per_minute non definito in _config.yml" + comment_form_info : "Il tuo indirizzo email non sarà pubblicato. Sono segnati i campi obbligatori" + comment_form_comment_label : "Commenta" + comment_form_md_info : "Il linguaggio Markdown è supportato" + comment_form_name_label : "Nome" + comment_form_email_label : "Indirizzo email" + comment_form_website_label : "Sito Web (opzionale)" + comment_btn_submit : "Invia commento" + comment_btn_submitted : "Inviato" + comment_success_msg : "Grazie per il tuo commento! Verrà visualizzato nel sito una volta che sarà approvato." + comment_error_msg : "C'è stato un errore con il tuo invio. Assicurati che tutti i campi richiesti siano stati completati e riprova." + loading_label : "Caricamento..." +it-IT: + <<: *DEFAULT_IT + +# Chinese (zh-CN Chinese - China) +# ----------------- +zh: &DEFAULT_ZH + page : "页面" + pagination_previous : "向前" + pagination_next : "向后" + breadcrumb_home_label : "首页" + breadcrumb_separator : "/" + menu_label : "切换菜单" + toc_label : "在本页上" + ext_link_label : "直接链接" + less_than : "少于" + minute_read : "分钟 阅读" + share_on_label : "分享" + meta_label : + tags_label : "标签:" + categories_label : "分类:" + date_label : "最新的:" + comments_label : "留下评论" + comments_title : "评论" + more_label : "了解更多" + related_label : "猜您还喜欢" + follow_label : "关注:" + feed_label : "Feed" + powered_by : "技术来自于" + website_label : "网站" + email_label : "电子邮箱" + recent_posts : "最新文章" + undefined_wpm : "_config.yml配置中words_per_minute字段未定义" + comment_form_info : "您的电子邮箱地址并不会被展示。请填写标记为必须的字段。" + comment_form_comment_label : "评论" + comment_form_md_info : "Markdown语法已支持。" + comment_form_name_label : "姓名" + comment_form_email_label : "电子邮箱" + comment_form_website_label : "网站(可选)" + comment_btn_submit : "提交评论" + comment_btn_submitted : "已提交" + comment_success_msg : "感谢您的评论!被批准后它会立即在此站点展示。" + comment_error_msg : "很抱歉,您的提交存在错误。请确保所有必填字段都已填写正确,然后再试一次。" + loading_label : "正在加载..." +zh-CN: + <<: *DEFAULT_ZH +zh-HK: + <<: *DEFAULT_ZH +zh-SG: + <<: *DEFAULT_ZH +# Taiwan (Traditional Chinese) +zh-TW: + page : "頁面" + pagination_previous : "較舊" + pagination_next : "較新" + breadcrumb_home_label : "首頁" + breadcrumb_separator : "/" + menu_label : "切換選單" + toc_label : "本頁" + ext_link_label : "外部連結" + less_than : "少於" + minute_read : "分鐘閱讀" + share_on_label : "分享到" + meta_label : + tags_label : "標籤:" + categories_label : "分類:" + date_label : "更新時間:" + comments_label : "留言" + comments_title : "留言內容" + more_label : "了解更多" + related_label : "猜您有與趣" + follow_label : "追蹤:" + feed_label : "RSS Feed" + powered_by : "Powered by" + website_label : "網站" + email_label : "電子信箱" + recent_posts : "最新文章" + undefined_wpm : "_config.yml 中未定義 words_per_minute" + comment_form_info : "您的電子信箱不會被公開. 必填部份已標記" + comment_form_comment_label : "留言內容" + comment_form_md_info : "支援Markdown語法。" + comment_form_name_label : "名字" + comment_form_email_label : "電子信箱帳號" + comment_form_website_label : "網頁 (可選填)" + comment_btn_submit : "送出留言" + comment_btn_submitted : "已送出" + comment_success_msg : "感謝您的留言! 審核後將會顯示在站上。" + comment_error_msg : "抱歉,部份資料輸入有問題。請確認資料填寫正確後再試一次。" + loading_label : "載入中..." + +# German / Deutsch +# ----------------- +de: &DEFAULT_DE + page : "Seite" + pagination_previous : "Vorherige" + pagination_next : "Nächste" + breadcrumb_home_label : "Home" + breadcrumb_separator : "/" + menu_label : + toc_label : "Auf dieser Seite" + ext_link_label : "Direkter Link" + less_than : "weniger als" + minute_read : "Minuten zum lesen" + share_on_label : "Teilen auf" + meta_label : + tags_label : "Tags:" + categories_label : "Kategorien:" + date_label : "Aktualisiert:" + comments_label : "Hinterlassen sie einen Kommentar" + comments_title : "Kommentare" + more_label : "Mehr anzeigen" + related_label : "Ihnen gefällt vielleicht auch" + follow_label : "Folgen:" + feed_label : "Feed" + powered_by : "Powered by" + website_label : "Webseite" + email_label : "E-Mail" + recent_posts : "Aktuelle Beiträge" + undefined_wpm : "Undefinierter Parameter words_per_minute in _config.yml" + comment_form_info : "Ihre E-Mail Adresse wird nicht veröffentlicht. Benötigte Felder sind markiert" + comment_form_comment_label : "Kommentar" + comment_form_md_info : "Markdown wird unterstützt." + comment_form_name_label : "Name" + comment_form_email_label : "E-Mail Addresse" + comment_form_website_label : "Webseite (optional)" + comment_btn_submit : "Kommentar absenden" + comment_btn_submitted : "Versendet" + comment_success_msg : "Danke für ihren Kommentar! Er wird auf der Seite angezeigt, nachdem er geprüft wurde." + comment_error_msg : "Entschuldigung, es gab einen Fehler. Bitte füllen sie alle benötigten Felder aus und versuchen sie es erneut." + loading_label : "Lade..." +de-DE: + <<: *DEFAULT_DE +de-AT: + <<: *DEFAULT_DE +de-CH: + <<: *DEFAULT_DE +de-BE: + <<: *DEFAULT_DE +de-LI: + <<: *DEFAULT_DE +de-LU: + <<: *DEFAULT_DE + +# Nepali (Nepal) +# ----------------- +ne: &DEFAULT_NE + page : "पृष्‍ठ" + pagination_previous : "अघिल्लो" + pagination_next : "अर्को" + breadcrumb_home_label : "गृह" + breadcrumb_separator : "/" + menu_label : "टगल मेनु" + toc_label : "यो पृष्‍ठमा" + ext_link_label : "सिधा सम्पर्क" + less_than : "कम्तिमा" + minute_read : "मिनेट पढ्नुहोस्" + share_on_label : "शेयर गर्नुहोस्" + meta_label : + tags_label : "ट्यागहरू:" + categories_label : "वर्गहरु:" + date_label : "अद्यावधिक:" + comments_label : "टिप्पणी दिनुहोस्" + comments_title : "टिप्पणीहरू" + more_label : "अझै सिक्नुहोस्" + related_label : "तपाईं रुचाउन सक्नुहुन्छ " + follow_label : "पछ्याउनुहोस्:" + feed_label : "फिड" + powered_by : "Powered by" + website_label : "वेबसाइट" + email_label : "इमेल" + recent_posts : "ताजा लेखहरु" + undefined_wpm : "अपरिभाषित प्यारामिटर शब्दहरू_प्रति_मिनेट at _config.yml" + comment_form_info : "तपाइँको इमेल ठेगाना प्रकाशित गरिने छैन।आवश्यक जानकारीहरुमा चिन्ह लगाइको छ" + comment_form_comment_label : "टिप्पणी" + comment_form_md_info : "मार्कडाउन समर्थित छ।" + comment_form_name_label : "नाम" + comment_form_email_label : "इमेल ठेगाना" + comment_form_website_label : "वेबसाइट (वैकल्पिक)" + comment_btn_submit : "टिप्पणी दिनुहोस् " + comment_btn_submitted : "टिप्पणी भयो" + comment_success_msg : "तपाईंको टिप्पणीको लागि धन्यवाद! एक पटक यो अनुमोदन गरेपछी यो साइटमा देखाउनेछ।" + comment_error_msg : "माफ गर्नुहोस्, तपाईंको टिप्पणी त्रुटि थियो।सबै आवश्यक जानकारीहरु पूरा गरिएको छ भने निश्चित गर्नुहोस् र फेरि प्रयास गर्नुहोस्।" + loading_label : "लोड हुँदैछ ..." +ne-NP: + <<: *DEFAULT_NE + +# Korean +# -------------- +ko: &DEFAULT_KO + page : "페이지" + pagination_previous : "이전" + pagination_next : "다음" + breadcrumb_home_label : "Home" + breadcrumb_separator : "/" + menu_label : "토글 메뉴" + toc_label : "On This Page" + ext_link_label : "직접 링크" + less_than : "최대" + minute_read : "분 소요" + share_on_label : "공유하기" + meta_label : + tags_label : "태그:" + categories_label : "카테고리:" + date_label : "업데이트:" + comments_label : "댓글남기기" + comments_title : "댓글" + more_label : "더 보기" + related_label : "참고" + follow_label : "팔로우:" + feed_label : "피드" + powered_by : "Powered by" + website_label : "웹사이트" + email_label : "이메일" + recent_posts : "최근 포스트" + undefined_wpm : "Undefined parameter words_per_minute at _config.yml" + comment_form_info : "이메일은 공개되지 않습니다. 작성 필요 필드:" + comment_form_comment_label : "댓글" + comment_form_md_info : "마크다운을 지원합니다." + comment_form_name_label : "이름" + comment_form_email_label : "이메일" + comment_form_website_label : "웹사이트(선택사항)" + comment_btn_submit : "댓글 등록" + comment_btn_submitted : "등록됨" + comment_success_msg : "감사합니다! 댓글이 머지된 후 확인하실 수 있습니다." + comment_error_msg : "댓글 등록에 문제가 있습니다. 필요 필드를 작성했는지 확인하고 다시 시도하세요." + loading_label : "로딩중..." +ko-KR: + <<: *DEFAULT_KO + +# Russian / Русский +# ----------------- +ru: &DEFAULT_RU + page : "Страница" + pagination_previous : "Предыдущая" + pagination_next : "Следующая" + breadcrumb_home_label : "Главная" + breadcrumb_separator : "/" + menu_label : "Выпадающее меню" + toc_label : "Содержание" + ext_link_label : "Прямая ссылка" + less_than : "менее" + minute_read : "мин на чтение" + share_on_label : "Поделиться" + meta_label : + tags_label : "Метки:" + categories_label : "Разделы:" + date_label : "Дата изменения:" + comments_label : "Оставить комментарий" + comments_title : "Комментарии" + more_label : "Читать далее" + related_label : "Вам также может понравиться" + follow_label : "Связаться со мной:" + feed_label : "RSS-лента" + powered_by : "Сайт работает на" + website_label : "Сайт" + email_label : "Электронная почта" + recent_posts : "Свежие записи" + undefined_wpm : "Не определён параметр words_per_minute в _config.yml" + comment_form_info : "Ваш адрес электронной почты не будет опубликован. Обязательные поля помечены" + comment_form_comment_label : "Комментарий" + comment_form_md_info : "Поддерживается синтаксис Markdown." + comment_form_name_label : "Имя" + comment_form_email_label : "Электронная почта" + comment_form_website_label : "Ссылка на сайт (необязательно)" + comment_btn_submit : "Оставить комментарий" + comment_btn_submitted : "Отправлено" + comment_success_msg : "Спасибо за Ваш комментарий! Он будет опубликован на сайте после проверки." + comment_error_msg : "К сожалению, произошла ошибка с отправкой комментария. Пожалуйста, убедитесь, что все обязательные поля заполнены и попытайтесь снова." + loading_label : "Отправка..." +ru-RU: + <<: *DEFAULT_RU + +# Lithuanian / Lietuviškai +# ----------------- +lt: &DEFAULT_LT + page : "Puslapis" + pagination_previous : "Ankstesnis" + pagination_next : "Sekantis" + breadcrumb_home_label : "Pagrindinis" + breadcrumb_separator : "/" + menu_label : "Meniu rodymas" + toc_label : "Turinys" + ext_link_label : "Tiesioginė nuoroda" + less_than : "mažiau nei" + minute_read : "min. skaitymo" + share_on_label : "Pasidalinti" + meta_label : + tags_label : "Žymės:" + categories_label : "Kategorijos:" + date_label : "Atnaujinta:" + comments_label : "Palikti komentarą" + comments_title : "Komentaras" + more_label : "Skaityti daugiau" + related_label : "Taip pat turėtų patikti" + follow_label : "Sekti:" + feed_label : "Šaltinis" + powered_by : "Sukurta su" + website_label : "Tinklapis" + email_label : "El. paštas" + recent_posts : "Naujausi įrašai" + undefined_wpm : "Nedeklaruotas parametras words_per_minute faile _config.yml" + comment_form_info : "El. pašto adresas nebus viešinamas. Būtini laukai pažymėti." + comment_form_comment_label : "Komentaras" + comment_form_md_info : "Markdown palaikomas." + comment_form_name_label : "Vardas" + comment_form_email_label : "El. paštas" + comment_form_website_label : "Tinklapis (nebūtina)" + comment_btn_submit : "Komentuoti" + comment_btn_submitted : "Įrašytas" + comment_success_msg : "Ačiū už komentarą! Jis bus parodytas kai bus patvirtintas." + comment_error_msg : "Atleiskite, įvyko netikėta klaida įrašant komentarą. Pasitikrinkite ar užpildėte visus būtinus laukus ir pamėginkite dar kartą." + loading_label : "Kraunama..." +lt-LT: + <<: *DEFAULT_LT + +# Greek +# -------------- +gr: &DEFAULT_GR + page : "Σελίδα" + pagination_previous : "Προηγούμενo" + pagination_next : "Επόμενo" + breadcrumb_home_label : "Αρχική" + breadcrumb_separator : "/" + menu_label : "Μενού" + toc_label : "Περιεχόμενα" + ext_link_label : "Εξωτερικός Σύνδεσμος" + less_than : "Λιγότερο από" + minute_read : "λεπτά ανάγνωσης" + share_on_label : "Μοιραστείτε το" + meta_label : + tags_label : "Ετικέτες:" + categories_label : "Κατηγορίες:" + date_label : "Ενημερώθηκε:" + comments_label : "Αφήστε ένα σχόλιο" + comments_title : "Σχόλια" + more_label : "Διάβαστε περισσότερα" + related_label : "Σχετικές αναρτήσεις" + follow_label : "Ακολουθήστε:" + feed_label : "RSS Feed" + powered_by : "Δημιουργήθηκε με" + website_label : "Ιστοσελίδα" + email_label : "Email" + recent_posts : "Τελευταίες αναρτήσεις" + undefined_wpm : "Δεν έχει οριστεί η παράμετρος words_per_minute στο αρχείο _config.yml" + comment_form_info : "Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα απαιτούμενα πεδία εμφανίζονται με αστερίσκο" + comment_form_comment_label : "Σχόλιο" + comment_form_md_info : "Το πεδίο υποστηρίζει Markdown." + comment_form_name_label : "Όνομα" + comment_form_email_label : "Διεύθυνση email" + comment_form_website_label : "Ιστοσελίδα (προαιρετικό)" + comment_btn_submit : "Υπόβαλε ένα σχόλιο" + comment_btn_submitted : "Έχει υποβληθεί" + comment_success_msg : "Ευχαριστούμε για το σχόλιό σας! Θα εμφανιστεί στην ιστοσελίδα αφού εγκριθεί." + comment_error_msg : "Λυπούμαστε, παρουσιάστηκε σφάλμα με την υποβολή σας. Παρακαλούμε βεβαιωθείτε ότι έχετε όλα τα απαιτούμενα πεδία συμπληρωμένα και δοκιμάστε ξανά." + loading_label : "Φόρτωση..." +gr-GR: + <<: *DEFAULT_GR + +# Swedish +# ----------------- +sv: &DEFAULT_SV + page : "Sidan" + pagination_previous : "Föregående" + pagination_next : "Nästa" + breadcrumb_home_label : "Hem" + breadcrumb_separator : "/" + menu_label : "Meny ridå" + toc_label : "På denna sida" + ext_link_label : "Direkt länk" + less_than : "mindre än" + minute_read : "minut läsning" + share_on_label : "Dela på" + meta_label : + tags_label : "Taggar:" + categories_label : "Kategorier:" + date_label : "Uppdaterades:" + comments_label : "Lämna en kommentar" + comments_title : "Kommentarer" + more_label : "Lär dig mer" + related_label : "Du kanske vill även läsa:" + follow_label : "Följ:" + feed_label : "Flöde" + powered_by : "Framställd med" + website_label : "Webbsida" + email_label : "E-post" + recent_posts : "Senaste inlägg" + undefined_wpm : "Odefinerade parametrar words_per_minute i _config.yml" + comment_form_info : "Din e-post adress kommer inte att publiceras. Obligatoriska fält är markerade." + comment_form_comment_label : "Kommentar" + comment_form_md_info : "Använd Markdown för text-formateringen." + comment_form_name_label : "Namn" + comment_form_email_label : "E-post adress" + comment_form_website_label : "Webdsida (valfritt)" + comment_btn_submit : "Skicka en kommentar" + comment_btn_submitted : "Kommentaren har tagits emot" + comment_success_msg : "Tack för din kommentar! Den kommer att visas på sidan så fort den har godkännts." + comment_error_msg : "Tyvärr det har blivit något fel i en av fälten, se till att du fyller i alla rutor och försök igen." + loading_label : "Laddar..." +sv-SE: + <<: *DEFAULT_SV +sv-FI: + <<: *DEFAULT_SV + +# Dutch +# ----------------- +nl: &DEFAULT_NL + page : "Pagina" + pagination_previous : "Vorige" + pagination_next : "Volgende" + breadcrumb_home_label : "Home" + breadcrumb_separator : "/" + menu_label : "Wissel Menu" + toc_label : "Op deze pagina" + ext_link_label : "Directe Link" + less_than : "minder dan" + minute_read : "minuut gelezen" + share_on_label : "Deel op" + meta_label : + tags_label : "Labels:" + categories_label : "Categorieën:" + date_label : "Bijgewerkt:" + comments_label : "Laat een reactie achter" + comments_title : "Commentaren" + more_label : "Meer informatie" + related_label : "Bekijk ook eens" + follow_label : "Volg:" + feed_label : "Feed" + powered_by : "Aangedreven door" + website_label : "Website" + email_label : "Email" + recent_posts : "Recente berichten" + undefined_wpm : "Niet gedefinieerde parameter words_per_minute bij _config.yml" + comment_form_info : "Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd" + comment_form_comment_label : "Commentaar" + comment_form_md_info : "Markdown wordt ondersteund." + comment_form_name_label : "Naam" + comment_form_email_label : "E-mailadres" + comment_form_website_label : "Website (optioneel)" + comment_btn_submit : "Commentaar toevoegen" + comment_btn_submitted : "Toegevoegd" + comment_success_msg : "Bedankt voor uw reactie! Het zal op de site worden weergegeven zodra het is goedgekeurd." + comment_error_msg : "Sorry, er is een fout opgetreden bij uw inzending. Zorg ervoor dat alle vereiste velden zijn voltooid en probeer het opnieuw." + loading_label : "Laden..." +nl-BE: + <<: *DEFAULT_NL +nl-NL: + <<: *DEFAULT_NL + +# Indonesian +# ----------------- +id: &DEFAULT_ID + page : "Halaman" + pagination_previous : "Kembali" + pagination_next : "Maju" + breadcrumb_home_label : "Home" + breadcrumb_separator : "/" + menu_label : "Menu Toggle" + toc_label : "Pada Halaman Ini" + ext_link_label : "Link langsung" + less_than : "Kurang dari" + minute_read : "Waktu baca" + share_on_label : "Berbagi di" + meta_label : + tags_label : "Golongan:" + categories_label : "Kategori:" + date_label : "Diupdate:" + comments_label : "Tinggalkan komentar" + comments_title : "Komentar" + more_label : "Pelajari lagi" + related_label : "Anda juga akan suka" + follow_label : "Ikuti:" + feed_label : "Feed" + powered_by : "Didukung oleh" + website_label : "Website" + email_label : "Email" + recent_posts : "Posting terbaru" + undefined_wpm : "Parameter terdeskripsi words_per_minute di _config.yml" + comment_form_info : "Email Anda tidak akan dipublish. Kolom yang diperlukan ditandai" + comment_form_comment_label : "Komentar" + comment_form_md_info : "Markdown disupport." + comment_form_name_label : "Nama" + comment_form_email_label : "Alamat email" + comment_form_website_label : "Website (opsional)" + comment_btn_submit : "Submit Komentar" + comment_btn_submitted : "Telah disubmit" + comment_success_msg : "Terimakasih atas komentar Anda! Komentar ini akan tampil setelah disetujui." + comment_error_msg : "Maaf, ada kesalahan pada submisi Anda. Pastikan seluruh kolom sudah dilengkapi dan coba kembali." + loading_label : "Sedang meload..." +id-ID: + <<: *DEFAULT_ID + +# Vietnamese +# ----------------- +vi: &DEFAULT_VI + page : "Trang" + pagination_previous : "Trước" + pagination_next : "Sau" + breadcrumb_home_label : "Trang chủ" + breadcrumb_separator : "/" + menu_label : "Menu" + toc_label : "Tại trang này" + ext_link_label : "Đường dẫn trực tiếp" + less_than : "nhỏ hơn" + minute_read : "phút đọc" + share_on_label : "Chia sẻ tại" + meta_label : + tags_label : "Nhãn:" + categories_label : "Chủ đề:" + date_label : "Cập nhật:" + comments_label : "Để lại bình luận" + comments_title : "Bình luận" + more_label : "Mở rộng" + related_label : "Có thể bạn cũng thích" + follow_label : "Theo dõi:" + feed_label : "Feed" + powered_by : "Được hỗ trợ bởi" + website_label : "Website" + email_label : "Email" + recent_posts : "Bài viết mới" + undefined_wpm : "Chưa định nghĩa thông số words_per_minute tại _config.yml" + comment_form_info : "Email của bạn sẽ được giữ bí mật. Các phần bắt buộc được đánh dấu." + comment_form_comment_label : "Bình luận" + comment_form_md_info : "Hỗ trợ Markdown." + comment_form_name_label : "Tên" + comment_form_email_label : "Địa chỉ email" + comment_form_website_label : "Website (không bắt buộc)" + comment_btn_submit : "Gửi bình luận" + comment_btn_submitted : "Đã được gửi" + comment_success_msg : "Cảm ơn bạn đã bình luận! Bình luận sẽ xuất hiện sau khi được duyệt." + comment_error_msg : "Rất tiếc, có lỗi trong việc gửi bình luận. Hãy đảm bảo toàn bộ các phần bắt buộc đã được điền đầy đủ và thử lại." + loading_label : "Đang tải..." +vi-VN: + <<: *DEFAULT_VI + +# Another locale +# -------------- +# diff --git a/_includes/mermaid.html b/_includes/mermaid.html index 741ef66f..e7846934 100644 --- a/_includes/mermaid.html +++ b/_includes/mermaid.html @@ -1,10 +1,10 @@ - - + \ No newline at end of file diff --git a/_includes/nav_list.html b/_includes/nav_list.html index 0d7e9ba3..2fab6915 100644 --- a/_includes/nav_list.html +++ b/_includes/nav_list.html @@ -1,47 +1,47 @@ -{% assign navigation = site.data.navigation[include.nav] %} - -