Recherche…


Introduction

Elixir Des astuces et des astuces avancées pour gagner du temps lors du codage.

Création de Sigils personnalisés et documentation

Chaque x sigil appelle la définition sigil_x respective

Définir des Sigils personnalisés

defmodule MySigils do
  #returns the downcasing string if option l is given then returns the list of downcase letters
  def sigil_l(string,[]), do: String.Casing.downcase(string)
  def sigil_l(string,[?l]), do: String.Casing.downcase(string) |> String.graphemes
  
  #returns the upcasing string if option l is given then returns the list of downcase letters
  def sigil_u(string,[]), do: String.Casing.upcase(string)
  def sigil_u(string,[?l]), do: String.Casing.upcase(string) |> String.graphemes
end

Multiple [OU]

Ceci est juste l’autre façon d’écrire des conditions multiples OU. Ce n'est pas l'approche recommandée car, dans une approche régulière, lorsque la condition est vraie, elle arrête d'exécuter les conditions restantes qui sauvent la durée de l'évaluation, contrairement à cette approche qui évalue d'abord toutes les conditions de la liste. C'est mauvais mais bon pour les découvertes.

# Regular Approach
find = fn(x) when x>10 or x<5 or x==7 -> x end 

# Our Hack
hell = fn(x) when true in [x>10,x<5,x==7] -> x end

Configuration personnalisée iex - Décoration iex

Copiez le contenu dans un fichier et enregistrez le fichier sous le nom de fichier .iex.exs dans votre répertoire de base et consultez la magie. Vous pouvez également télécharger le fichier ICI

# IEx.configure colors: [enabled: true]
# IEx.configure colors: [ eval_result: [ :cyan, :bright ] ]
IO.puts IO.ANSI.red_background() <> IO.ANSI.white() <> " ❄❄❄ Good Luck with Elixir ❄❄❄ " <> IO.ANSI.reset
Application.put_env(:elixir, :ansi_enabled, true)
IEx.configure(
 colors: [
   eval_result: [:green, :bright] ,
   eval_error: [[:red,:bright,"Bug Bug ..!!"]],
   eval_info: [:yellow, :bright ],
 ],
 default_prompt: [
   "\e[G",    # ANSI CHA, move cursor to column 1
    :white,
    "I",
    :red,
    "❤" ,       # plain string
    :green,
    "%prefix",:white,"|",
     :blue,
     "%counter",
     :white,
     "|",
    :red,
    "▶" ,         # plain string
    :white,
    "▶▶"  ,       # plain string
      # ❤ ❤-»" ,  # plain string
    :reset
  ] |> IO.ANSI.format |> IO.chardata_to_string

)


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow