0

Установка Oh My ZSH! в Ubuntu

Oh My ZSH! — это фреймворк с открытым исходным кодом, предназначенный для управления конфигурацией оболочки ZSH.

Z shell, zsh — одна из современных командных оболочек UNIX, может использоваться как интерактивная оболочка, либо как мощный скриптовой интерпретатор. Zsh является расширенным bourne shell с большим количеством улучшений.

Вот так преображается терминал, если используется оболочка ZSH в купе с Oh My ZSH!

oh-my-zsh-example

Continue Reading

0

Error:(28, 0) Gradle DSL method not found: ‘runProguard()’

Такая ошибка может возникнуть после обновления Android Studio, которая рекомендует использовать свежую версию Gradle. Исправим это недоразумение.

Мне помогло следующее решение — нужно удалить строку в build-файле Gradle для модуля app (/app/build.gradle), причём номер строки указан первой цифрой в тексте ошибки (у меня это строка 28):

buildTypes {
  release {
    runProguard false // эту строку нужно удалить
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
  }
}

После удаления строки запускаем синхронизацию «Sync Project with Gradle Files».

Continue Reading

0

Шаблон полного отображения в списке объектов NetCat CMS

При работе с системой управления контентом NetCat CMS может возникнуть потребность вывести данные полного отображения объекта, используя функцию nc_objects_list(), она же s_list_class(). Изначально функция расчитана на вывод информации списка, а не отдельного объекта.

Решение, в данном случае, очень простое — в компоненте, в поле «Объект в списке» нужно вписать код:

<? /* данные из полного отображения объекта */ ?>
<? include_once (
    $nc_core->CLASS_TEMPLATE_FOLDER
    . $cc_env['Class_ID']
    . ($cc_env['Class_Template_ID'] ? "/" . $cc_env['Class_Template_ID'] : "")
    . "/RecordTemplateFull.html"
); ?>

В результате, вместо отображения объекта из списка, будет выведено содержимое поля полного отображения объекта.

Такой же подход может быть полезен при желании использовать одинаковый шаблон при выводе объекта списка и полного отображения объекта.

2

AJAX-авторизация в CMS NetCat

AJAX-авторизация в CMS NetCatПопулярная отечественная CMS NetCat имеет в своём составе модуль «Личный кабинет», который, помимо прочего, позволяет организовать регистрацию и авторизацию пользователей на сайте. Авторизация нас как раз и интересует, а именно организация ajax-авторизации, без назойливой перезагрузки страницы, которая инициируется отправкой формы с данными.

Готового решения для этого у системы управления контентом NetCat пока ещё нет, но его можно легко реализовать стандартными средствами. Ниже представлена инструкция по шагам.

1. Макет дизайна и форма авторизации

На этом шаге нам нужно расширить стандартную форму авторизации. Форма может находится в настройках модуля «Личный кабинет» — «Форма авторизации», а может быть выведена непосредственно в макете дизайна. Рассмотрим ситуацию, когда форма выведена в макете.

Continue Reading

0

Установка плагина Mercurial для Eclipse

MercurialEclipseИспользование Mercurial совместно с Eclipse можно настроить установкой одного единственного плагина MercurialEclipse. MercurialEclipse позволяет организовать полноценное взаимодействие между Eclipse и удалённым (например BitBucket) или локальным репозиторием hg.

Процесс установки очень прост:


Continue Reading

4

Установка Android SDK, Java JDK, Android Studio в Ubuntu

1. Установка Java JDK
2. Установка Android SDK
3. Установка Android Studio
4. Дополнительные опции установки Java JDK

Установка Java JDK

В центре приложений Ubuntu предлагается воспользоваться OpenJDK Java 7 Runtime (JRE), это не подойдёт для работы Android Studio (для Eclipse кстати тоже), нам нужно именно Java JDK, тот самый от компании Oracle.

Возможная ошибка в случае несоответствия пакета Java:
«tool.jar is not in Android Studio classpath. Please ensure JAVA_HOME points to JDK rather than JRE»

Continue Reading

0

Динамические идентификаторы строк из XML русурсов в Android

Частая задача в программировании — получение строковых ресурсов, не зная их точных идентификаторов, или получая идентификаторы из других данных. Программирование под Android не является исключением, вот небольшая инструкция по теме составления динамических идентификаторов строковых переменных из XML ресурсов в Android.

В обычном случае строковый ресурс получается по своему идентификатору в области приложения, в данном случае идентификатор somevalue0:

getString(R.string.somevalue0);

В общем случае файл строковых ресурсов, например res/values/somevalues.xml, будет таким:

< ?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="somevalue0">Zero string</string>
    <string name="somevalue1">First string</string>
    <string name="somevalue2">Second string</string>
</resources>

Но как получить это же значение, если нам известен префикс somevalue и переменная со значением 0? Или больше — получить последовательно в цикле несколько динамических строковых значений? Например так:

"somevalue" + intVariable.toString()

Continue Reading

0

Установка Google Play Services в Eclipse

Эта простая пошаговая инструкция расскажет как установить Google Play Services, необходимое для Google Maps API v2 и прочих сервисов, которые предлагает разработчикам компания Google.

Сначала нужно установить Google Play Services из источников Android SDK. Для этого открываем менеджер пакетов Android в Eclipse:

Window > Android SDK Manager

Или напрямую с диска (в моём случае это /opt/android-sdk-linux/tools/android) и устанавливаем Google Play Services во подменю Extras.

Continue Reading

0

Подключение реальных android-устройств в Android Studio и Eclipse

Подключение реальных android-устройств в UbuntuЭта простая инструкция поможет подключить обычные физические android-устройства в режиме USB debugging mode к среде разработки в Ubuntu. Тестирование приложения на реальном устройстве гораздо продуктивнее и эта инструкция расскажет как сделать это на устройстве, без дополнительных утомительных действий. Достаточно просто запустить приложение в среде разработки Android Studio или Eclipse и оно автоматически стартует на устройстве. С выходом новых карт Google Maps API v2 для ОС Android, это стало весьма актуально, т.к. на данный момент не получится полноценно использовать Google Play Services на эмуляторе.

Прежде чем начать подключать устройство к системе, следует включить режим USB debugging на самом смартфоне или планшете, это включается в меню:

Android 3.2 и более ранние версии:
Settings > Applications > Development

Android 4.0 и выше:
Settings > Developer options

ВАЖНО: В Android 4.2 и выше, Developer options скрыто по умолчанию. Для активации опции нужно зайти в меню Settings > About phone и нажать на Build number семь раз. После этого следует вернуться в предыдущий пункт Developer options.

Теперь начнём, добавим правило работы с нужным нам USB устройством, для этого создадим следующий файл:

sudo touch /etc/udev/rules.d/51-android.rules

Continue Reading

1

Полная замена переносов строк в JavaScript при помощи PHP

Для передачи данных посредствам AJAX или других JavaScript-функций, иногда требуется избавиться от переносов строк. Как показала практика, просто удалить или заменить командные символы возврата и новой строки, \r и \n, недостаточно.

Приведу наиболее полную последовательность «нежелательных» символов для замены, и их обработку через PHP-функцию str_replace():

// массив спецсимволов для замены
$search = array(PHP_EOL, chr(10), chr(13), '\r' , '\n', '\t', '\x0B', '\0');
// на что заменять
$replace = '';
// текст с переносами строк
$sometext = '...';
// функция замены переноса строк
$newtext = str_replace($search , $replace, $sometext);

При желании можно заменять символы не на пустую строку, а на уникальный флаг, например %newline%, или HTML-тег <br />. Тогда процесс станет обратимым и переносы возможно будет восстановить.