Bon voilà dans l'attente d'un gros article, en voici un plus petit qui
explique comment préparer markitup pour rails 3. Je pars du principe que vous
êtes dans votre projet rails.
Téléchargez markitup. Copiez le répertoire "markitup" de l'archive dans
stylesheets et également dans
javascripts. (De cette manière il n'y aura plus
qu'à remplacer le répertoire pour une mise à jour de markitup)
Dans la vue ou le layout :
<%= stylesheet_link_tag
"markitup/skins/markitup/style.css",
"markitup/sets/default/style.css" %>
<%= javascript_include_tag
"markitup/jquery.markitup.js",
"markitup/sets/default/set.js";
"initialize_markitup.js" %>
Et dans le fichier "initialize_markitup.js" :
$(function(){
$('.monmarkitup').markItUp(mySettings);
});
Mettez ensuite dans votre code html un div avec pour classe "monmarkitup"
et ça devrait marcher.
N'oubliez pas d'include également jQuery si ce n'est déjà
fait.
Pour ActiveAdmin - La procédure est la même pour les autres éditeurs
WYSIWYG
Grosse parenthèse pour include markitup dans active_admin, il faut ajouter
dans initializers/active_admin.rb :
config.register_javascript
'markitup/jquery.markitup.pack.js'
config.register_javascript
'markitup/sets/default/set.js'
config.register_javascript 'initialize_markitup.js'
config.register_stylesheet
'markitup/skins/markitup/style.css'
config.register_stylesheet
'markitup/sets/default/style.css'
# Attention le fichier ci-dessous est à créer
:
config.register_stylesheet
'reset_markitup.css'
Le reset_markitup.css permet
de pas tout péter dans l'interface :
.formtastic div:first-of-type{
display:inline-block;
}
Et dans votre fichier app/admin/model.rb section
form do, il faut ajouter ceci au champ concerné.
input_html => { :class => "monmarkitup" }
Exemple :
form.input :title, :input_html => { :class =>
"monmarkitup" }
Coté serveur, il existe quelques gems pour convertir votre code en html
:
BBCODE : bb-ruby
TEXTILE : RedCloth
MARKDOWN : BlueCloth
Bon code !