Премини към съдържанието

Препоръчан отговор


Здравейте

Отскоро почнах да разучавам Kivy и понеже vim ми е любимия редактор/IDE,се нуждая от някакъв аддон който да поддържа поне syntax highlight и intendation за .kv файловете.Пък ако има и autocomplete ще е златен :) Намерих само този,който просто украсява кода.Но проблема е че при мен целият код е в червен нюанс.Предполагам поради Numix темата на Ubuntu.

 

Ето как изглежда:

 

vim.png

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Не съм по vim-а но...,

 

1. Пробвай като смениш темата за vim, защото сега редактора ползва твоята тема на терминала, която ползва тези грозни numix цветове.

 

2. Или просто смени темата на терминала..

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Няма нужда от plugin за това - файла ми изглежда като YAML .

1. В vimrc добавяш следният ред

au BufEnter     *.kv setf yaml

2. За по-добър indentation добави в същия файл следните редове

set shiftwidth=4
set tabstop=4
set smartindent

3. Autocomplete vim си има - ето ти и по-сносен вариант, който работи с TAB. Отново добавяш в vimrc

set complete=.,k            " Autocomplete search in current  only AND dictionary( Ctrl+N ) in current file
set ic                      " Ignore case when search
function! Tab_Or_Complete() " Autocomplete works with TAB when inserting a word
  if col('.')>1 && strpart( getline('.'), col('.')-2, 3 ) =~ '^\w'
    return "\<C-N>"
  else
    return "\<Tab>"
  endif
endfunction

:inoremap <Tab> <C-R>=Tab_Or_Complete()<CR>

На Ubuntu vimrc файла трябва да ти е с път /etc/vim/vimrc

Ако го няма - търси в home директорията ти

  • Харесва ми 1

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Не съм по vim-а но...,

 

1. Пробвай като смениш темата за vim, защото сега редактора ползва твоята тема на терминала, която ползва тези грозни numix цветове.

 

2. Или просто смени темата на терминала..

 

Благодаря.А как мога да сменя цветовата схема на vim само за определен тип файлове?Например тия .kv?Или например за питонските файлове.Отскоро съм в тоя отбор :)

 

 

 

Няма нужда от plugin за това - файла ми изглежда като YAML .

1. В vimrc добавяш следният ред

au BufEnter     *.kv setf yaml

2. За по-добър indentation добави в същия файл следните редове

set shiftwidth=4
set tabstop=4
set smartindent

На Ubuntu vimrc файла трябва да ти е с път /etc/vim/vimrc

Ако го няма - търси в home директорията ти

 

Благодаря.

au BufEnter *.kv setf yaml свърши работа.С опция set smartindent разлика не забелязах.

Ето съдържанието на моят .vimrc файл :

syntax on
filetype indent plugin on
set tabstop=8
set expandtab
set shiftwidth=4
set softtabstop=4


execute pathogen#infect()

au BufEnter    *.kv setf yaml

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Ето тук - има подобно питане, но едва ли е възможно да ползваш определена цветова схема само за дадени файлове, или даден програмен език.

Може например, да превключваш темите когато си искаш, но във vim не знам как става това, трябва да се разтърсиш.

 

Поздрави!

Редактирано от ivoarch (преглед на промените)

  • Харесва ми 1

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Напиши в vim

:help colo

И примерно избираш elflord , пак в vimrc

au BufEnter     *.kv :colorscheme elflord

Ето тук - има подобно питане, но едва ли е възможно да ползваш определена цветова схема само за дадени файлове, или даден програмен език.

Може например, да превключваш темите когато си искаш, но във vim не знам как става това, трябва да се разтърсиш.

 

Поздрави!

Ето пример в предишния ми пост че може

Редактирано от The_Ghosts (преглед на промените)
  • Харесва ми 2

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
au BufEnter     *.kv :colorscheme elflord

Ето пример в предишния ми пост че може

Ок, връщам си думите тогава!

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Напиши в vim

:help colo

И примерно избираш elflord , пак в vimrc

au BufEnter     *.kv :colorscheme elflord

Ето пример в предишния ми пост че може

 

Получи се,благодаря.Между другото тук намерих доста голям избор от цветови схеми :)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

  • Разглеждащи това в момента   0 потребители

    Няма регистрирани потребители разглеждащи тази страница.

  • Горещи теми в момента

  • Подобни теми

    • от MirenaB
      Здравейте,
      Организира се хакатон за създаване на Booking Engine с парични награди в София (награда за 1во място е над 3000 лева). 
      Хакатонът ще се състои на 2-4 ноември
      Ако се интересувате, запишете участието си чрез регистрация на уебсайта https://staykeepers.com/hackathon
      Повече информация може да намерите във фейсбук: https://www.facebook.com/events/328339337761893/
      Поздрави
    • от wavic
      Най-елементарното Kivy приложение взето от youtube пробвам да го направя на Android apk, ползвайки buildozer, обаче не се получава. Buildozer не намира нещо наречено toolchain.  Не съм програмист и дори не зная, какво точно е това. При първия опит, buildozer дръпна и инсталира някъде някакви android-* неща и сега това не това не си го намира. Arch Linux, Python 3.6.2.
      # Check configuration tokens # Ensure build layout # Check configuration tokens # Preparing build # Check requirements for android # Run 'dpkg --version' # Cwd None /bin/sh: dpkg: command not found # Search for Git (git) # -> found at /usr/bin/git # Search for Cython (cython) # -> found at /usr/bin/cython3 # Search for Java compiler (javac) # -> found at /usr/lib/jvm/java-9-jdk/bin/javac # Search for Java keytool (keytool) # -> found at /usr/lib/jvm/java-9-jdk/bin/keytool # Install platform # Run 'pip install -q --user "appdirs" "colorama>=0.3.3" "sh>=1.10,<1.12.5" "jinja2" "six"' # Cwd None # Apache ANT found at /home/victor/.buildozer/android/platform/apache-ant-1.9.4 # Android SDK found at /home/victor/.buildozer/android/platform/android-sdk-20 # Android NDK found at /home/victor/.buildozer/android/platform/android-ndk-r9c # Check application requirements # Check garden requirements # Compile platform # Run '/usr/bin/python -m pythonforandroid.toolchain create --dist_name=myapp --bootstrap=sdl2 --requirements=python3crystax,kivy --arch armeabi-v7a --copy-libs --color=always --storage-dir=/home/victor/Work/Dev/Python/Kivy/Kivy crash course/test/.buildozer/android/platform/build' # Cwd /home/victor/Work/Dev/Python/Kivy/Kivy crash course/test/.buildozer/android/platform/python-for-android-master [INFO]: Will compile for the following archs: armeabi-v7a [INFO]: Found Android API target in $ANDROIDAPI [INFO]: Available Android APIs are (19) [INFO]: Requested API target 19 is available, continuing. [INFO]: Found NDK dir in $ANDROIDNDK [INFO]: Got NDK version from $ANDROIDNDKVER [WARNING]: NDK version was set as r9c, but checking the NDK dir claims it is . [WARNING]: The build will try to continue, but it may fail and you should check that your setting is correct. [WARNING]: If the NDK dir result is correct, you don't need to manually set the NDK ver. [INFO]: Using Google NDK r9c [INFO]: Found virtualenv at /usr/bin/virtualenv [WARNING]: Could not find toolchain subdirectory! [WARNING]: Could not find any toolchain for arm-linux-androideabi! [ERROR]: python-for-android cannot continue; aborting # Command failed: /usr/bin/python -m pythonforandroid.toolchain create --dist_name=myapp --bootstrap=sdl2 --requirements=python3crystax,kivy --arch armeabi-v7a --copy-libs --color=always --storage-dir=/home/victor/Work/Dev/Python/Kivy/Kivy crash course/test/.buildozer/android/platform/build # # Buildozer failed to execute the last command # The error might be hidden in the log above this error # Please read the full log, and search for it before # raising an issue with buildozer itself. # In case of a bug report, please add a full log with log_level = 2 ~/W/D/P/K/K/test $ buildozer android debug # Check configuration tokens # Ensure build layout # Create directory /home/victor/Work/Dev/Python/Kivy/Kivy crash course/test/bin # Check configuration tokens # Preparing build # Check requirements for android # Run 'dpkg --version' # Cwd None /bin/sh: dpkg: command not found # Search for Git (git) # -> found at /usr/bin/git # Search for Cython (cython) # -> found at /usr/bin/cython3 # Search for Java compiler (javac) # -> found at /usr/lib/jvm/java-9-jdk/bin/javac # Search for Java keytool (keytool) # -> found at /usr/lib/jvm/java-9-jdk/bin/keytool # Install platform # Run 'pip install -q --user "appdirs" "colorama>=0.3.3" "sh>=1.10,<1.12.5" "jinja2" "six"' # Cwd None # Apache ANT found at /home/victor/.buildozer/android/platform/apache-ant-1.9.4 # Android SDK found at /home/victor/.buildozer/android/platform/android-sdk-20 # Android NDK found at /home/victor/.buildozer/android/platform/android-ndk-r9c # Check application requirements # Check garden requirements # Compile platform # Run '/usr/bin/python -m pythonforandroid.toolchain create --dist_name=myapp --bootstrap=sdl2 --requirements=python3crystax,kivy --arch armeabi-v7a --copy-libs --color=always --storage-dir=/home/victor/Work/Dev/Python/Kivy/Kivy crash course/test/.buildozer/android/platform/build' # Cwd /home/victor/Work/Dev/Python/Kivy/Kivy crash course/test/.buildozer/android/platform/python-for-android-master [INFO]: Will compile for the following archs: armeabi-v7a [INFO]: Found Android API target in $ANDROIDAPI [INFO]: Available Android APIs are (19) [INFO]: Requested API target 19 is available, continuing. [INFO]: Found NDK dir in $ANDROIDNDK [INFO]: Got NDK version from $ANDROIDNDKVER [WARNING]: NDK version was set as r9c, but checking the NDK dir claims it is . [WARNING]: The build will try to continue, but it may fail and you should check that your setting is correct. [WARNING]: If the NDK dir result is correct, you don't need to manually set the NDK ver. [INFO]: Using Google NDK r9c [INFO]: Found virtualenv at /usr/bin/virtualenv [WARNING]: Could not find toolchain subdirectory! [WARNING]: Could not find any toolchain for arm-linux-androideabi! [ERROR]: python-for-android cannot continue; aborting # Command failed: /usr/bin/python -m pythonforandroid.toolchain create --dist_name=myapp --bootstrap=sdl2 --requirements=python3crystax,kivy --arch armeabi-v7a --copy-libs --color=always --storage-dir=/home/victor/Work/Dev/Python/Kivy/Kivy crash course/test/.buildozer/android/platform/build # # Buildozer failed to execute the last command # The error might be hidden in the log above this error # Please read the full log, and search for it before # raising an issue with buildozer itself. # In case of a bug report, please add a full log with log_level = 2  
      Това е .spec файла:
      [app] # (str) Title of your application title = My Application # (str) Package name package.name = myapp # (str) Package domain (needed for android/ios packaging) package.domain = org.test # (str) Source code where the main.py live source.dir = . # (list) Source files to include (let empty to include all the files) source.include_exts = py,png,jpg,kv,atlas # (list) List of inclusions using pattern matching #source.include_patterns = assets/*,images/*.png # (list) Source files to exclude (let empty to not exclude anything) #source.exclude_exts = spec # (list) List of directory to exclude (let empty to not exclude anything) #source.exclude_dirs = tests, bin # (list) List of exclusions using pattern matching #source.exclude_patterns = license,images/*/*.jpg # (str) Application versioning (method 1) version = 0.1 # (str) Application versioning (method 2) # version.regex = __version__ = ['"](.*)['"] # version.filename = %(source.dir)s/main.py # (list) Application requirements # comma seperated e.g. requirements = sqlite3,kivy # requirements = kivy # Require python3crystax: requirements = python3crystax,kivy # (str) Custom source folders for requirements # Sets custom source for any requirements with recipes # requirements.source.kivy = ../../kivy # (list) Garden requirements #garden_requirements = # (str) Presplash of the application #presplash.filename = %(source.dir)s/data/presplash.png # (str) Icon of the application #icon.filename = %(source.dir)s/data/icon.png # (str) Supported orientation (one of landscape, portrait or all) orientation = all # (list) List of service to declare #services = NAME:ENTRYPOINT_TO_PY,NAME2:ENTRYPOINT2_TO_PY # # OSX Specific # # # author = © Copyright Info # change the major version of python used by the app osx.python_version = 3 # Kivy version to use osx.kivy_version = 1.10 # # Android specific # # (bool) Indicate if the application should be fullscreen or not fullscreen = 0 # (string) Presplash background color (for new android toolchain) # Supported formats are: #RRGGBB #AARRGGBB or one of the following names: # red, blue, green, black, white, gray, cyan, magenta, yellow, lightgray, # darkgray, grey, lightgrey, darkgrey, aqua, fuchsia, lime, maroon, navy, # olive, purple, silver, teal. #android.presplash_color = #FFFFFF # (list) Permissions #android.permissions = INTERNET # (int) Android API to use #android.api = 19 # (int) Minimum API required #android.minapi = 9 # (int) Android SDK version to use #android.sdk = 20 # (str) Android NDK version to use #android.ndk = 9c # (bool) Use --private data storage (True) or --dir public storage (False) #android.private_storage = True # (str) Android NDK directory (if empty, it will be automatically downloaded.) #android.ndk_path = # (str) Android SDK directory (if empty, it will be automatically downloaded.) #android.sdk_path = # (str) ANT directory (if empty, it will be automatically downloaded.) #android.ant_path = # (bool) If True, then skip trying to update the Android sdk # This can be useful to avoid excess Internet downloads or save time # when an update is due and you just want to test/build your package # android.skip_update = False # (str) Android entry point, default is ok for Kivy-based app #android.entrypoint = org.renpy.android.PythonActivity # (list) Pattern to whitelist for the whole project #android.whitelist = # (str) Path to a custom whitelist file #android.whitelist_src = # (str) Path to a custom blacklist file #android.blacklist_src = # (list) List of Java .jar files to add to the libs so that pyjnius can access # their classes. Don't add jars that you do not need, since extra jars can slow # down the build process. Allows wildcards matching, for example: # OUYA-ODK/libs/*.jar #android.add_jars = foo.jar,bar.jar,path/to/more/*.jar # (list) List of Java files to add to the android project (can be java or a # directory containing the files) #android.add_src = # (list) Android AAR archives to add (currently works only with sdl2_gradle # bootstrap) #android.add_aars = # (list) Gradle dependencies to add (currently works only with sdl2_gradle # bootstrap) #android.gradle_dependencies = # (str) python-for-android branch to use, defaults to master #p4a.branch = stable # (str) OUYA Console category. Should be one of GAME or APP # If you leave this blank, OUYA support will not be enabled #android.ouya.category = GAME # (str) Filename of OUYA Console icon. It must be a 732x412 png image. #android.ouya.icon.filename = %(source.dir)s/data/ouya_icon.png # (str) XML file to include as an intent filters in <activity> tag #android.manifest.intent_filters = # (list) Android additionnal libraries to copy into libs/armeabi #android.add_libs_armeabi = libs/android/*.so #android.add_libs_armeabi_v7a = libs/android-v7/*.so #android.add_libs_x86 = libs/android-x86/*.so #android.add_libs_mips = libs/android-mips/*.so # (bool) Indicate whether the screen should stay on # Don't forget to add the WAKE_LOCK permission if you set this to True #android.wakelock = False # (list) Android application meta-data to set (key=value format) #android.meta_data = # (list) Android library project to add (will be added in the # project.properties automatically.) #android.library_references = # (str) Android logcat filters to use #android.logcat_filters = *:S python:D # (bool) Copy library instead of making a libpymodules.so #android.copy_libs = 1 # (str) The Android arch to build for, choices: armeabi-v7a, arm64-v8a, x86 android.arch = armeabi-v7a # # Python for android (p4a) specific # # (str) python-for-android git clone directory (if empty, it will be automatically cloned from github) #p4a.source_dir = # (str) The directory in which python-for-android should look for your own build recipes (if any) #p4a.local_recipes = # (str) Filename to the hook for p4a #p4a.hook = # (str) Bootstrap to use for android builds # p4a.bootstrap = sdl2 # # iOS specific # # (str) Path to a custom kivy-ios folder #ios.kivy_ios_dir = ../kivy-ios # (str) Name of the certificate to use for signing the debug version # Get a list of available identities: buildozer ios list_identities #ios.codesign.debug = "iPhone Developer: <lastname> <firstname> (<hexstring>)" # (str) Name of the certificate to use for signing the release version #ios.codesign.release = %(ios.codesign.debug)s [buildozer] # (int) Log level (0 = error only, 1 = info, 2 = debug (with command output)) log_level = 2 # (int) Display warning if buildozer is run as root (0 = False, 1 = True) warn_on_root = 1 # (str) Path to build artifact storage, absolute or relative to spec file # build_dir = ./.buildozer # (str) Path to build output (i.e. .apk, .ipa) storage # bin_dir = ./bin # ----------------------------------------------------------------------------- # List as sections # # You can define all the "list" as [section:key]. # Each line will be considered as a option to the list. # Let's take [app] / source.exclude_patterns. # Instead of doing: # #[app] #source.exclude_patterns = license,data/audio/*.wav,data/images/original/* # # This can be translated into: # #[app:source.exclude_patterns] #license #data/audio/*.wav #data/images/original/* # # ----------------------------------------------------------------------------- # Profiles # # You can extend section / key with a profile # For example, you want to deploy a demo version of your application without # HD content. You could first change the title to add "(demo)" in the name # and extend the excluded directories to remove the HD content. # #[app@demo] #title = My Application (demo) # #[app:source.exclude_patterns@demo] #images/hd/* # # Then, invoke the command line with the "demo" profile: # #buildozer --profile demo android debug  
    • от kolon
      един и същ python-ски код се ръннва първо на shell-ското IDLE на python-а и си се изпълнява без никакви грешки и проблеми.
      при ръннване на същият код от sublime text 3 кодът се изпълнява само до един определен момент и просто не продължава, при това без да дава грешка.
      name = input ("здравейте! вашето име?\n")
      print ("здравейте,  " + name +"!")
      при изпълняване със sublime text в panel-а за results се появява "здравейте! вашето име?" и ... дотам. защото курсорът, който трябва да позволи на потребителя да въведи името си просто не се появява. 
      как би могъл да бъде решен този проблем?
      благодаря предварително!
    • от ToDiR0S
      Здравейте, 
      Не съм писал досега на Python, но ми беше интересен и от известно време отлагам един проект и реших да се възползвам. Идеята е скрипт, който ходи по един страница, взима определена информация и я пълни в един excel файл. Използвах BeautifulSoup за събирането на информацията и openpyxl за записването в файла. Всичко точно! (Записването във файла не е на 100% перфектно, така че ако някой има по-добър ресурс, да сподели. Ще дам и повече информация ако е нужно.)
      Проблема е, че страницата може да се отвори само от работния компютър на който нямам администраторски права. За самата страница не иска никакви логини, затова си мисля, че е от машината и надеждата ми е, че ако пусна скрипта от работния компютър ще тръгне. Не съм много сигурен обаче. За администраторски права мога да искам от сис. админа, но за целта трябва имам нещо работещо или поне да знам какво да искам. Плана ми беше да направя едно .exе, като за предпочитане да не му трябват ад. за права да върви. Разбрах обаче, че създаването на .exe е сложно. Опитах с pyInstaller, но не успях от първия път. Не съм и сигурен как това, че чете готов .xlsx файл, копира го, прави промени по копието и го записва ще се отрази на .exe-то. Сега не знам дали този елементарен скрипт няма да стане прекалено сложен. Някакви идеи за това как може да се изпълни? Евентуално ако .exe е прекалено сложно за изпълнение съм навит и през конзолката да си пускам скриптчето, но трябва да е с минимални инсталации, някакъв минимален интерпретатор колкото да запали скрипта. 
    • от kristian.b.g.
      Здравейте, моля за помощ имам следната задача, но нямам идея как точно да го направя:
      Създайте графично приложение на Python с помощта на wxPython, което се обръща към web API на Spotify и получава данни за изпълнител. Приложението трябва да има текстово поле за търсене на изпълнител по име, и след parse-ване на резултата да показва:
      списъчно поле с жанровете, в които има песни търсения изпълнител
      изображение за изпълнителя
      рейтинг под формата набор от символ за звезда, по една за всеки 10 единици рейтинг
      Адресът за достъп е https://api.spotify.com/v1/search?q=ИЗПЪЛНИТЕЛ&type=artist
      Примерен резултат от такова запитване е:
      { "artists" : { "href" : "https://api.spotify.com/v1/search?query=rammstein&offset=0&limit=20&type=artist", "items" : [ { "external_urls" : { "spotify" : "https://open.spotify.com/artist/6wWVKhxIU2cEi0K81v7HvP" }, "genres" : [ "industrial metal", "neue deutsche harte" ], "href" : "https://api.spotify.com/v1/artists/6wWVKhxIU2cEi0K81v7HvP", "id" : "6wWVKhxIU2cEi0K81v7HvP", "images" : [ { "height" : 1080, "url" : "https://i.scdn.co/image/f45dbf8d0ad281caf896a9f60c6ad4912511c0d4", "width" : 720 }, { "height" : 960, "url" : "https://i.scdn.co/image/6af321bada8e15423f5bfa0587a645ad83bbf090", "width" : 640 }, { "height" : 300, "url" : "https://i.scdn.co/image/480455a9fb0692dda061cb88dd93f21a74086c80", "width" : 200 }, { "height" : 96, "url" : "https://i.scdn.co/image/13eee08cef99f7b32145a4f7f8e3e83af2c50287", "width" : 64 } ], "name" : "Rammstein", "popularity" : 80, "type" : "artist", "uri" : "spotify:artist:6wWVKhxIU2cEi0K81v7HvP" } ], "limit" : 20, "next" : null, "offset" : 0, "previous" : null, "total" : 1 } }  
      Ще бъда благодарен, ако няккой би могъл да даде съвет г/д как да го направя.
  • Дарение

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.